DISNIX-NIXOPS-CLIENT(1)

πŸ“¦ version 0.9.4, in nixos 26.05, nixpkgs unstable

πŸ’… DISNIX-NIXOPS-CLIENT(1) β€” the girlie's guide ✨

okay so real quick: this is disnix-nixops-client from the User Commands girlies, and we're about to make remote deployment make Sense. buckle up bestie πŸŽ€


🌸 NAME 🌸

disnix-nixops-client β€” the whole entire vibe is "gives you access to the disnix-service through the NixOps SSH interface". that's it, that's the function. πŸ’–


✨ SYNOPSIS ✨

disnix-nixops-client --target hostname operation [OPTION] [paths]

like, target first, then the operation, then whatever options and paths you're dragging along with you. periodt. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so disnix-nixops-client gives you remote access to a disnix-service instance that's running on a machine somewhere in the network, and it does it through NixOps. the way this slaps is that it lets you do remote deployment operations on target machines that got instantiated and deployed in some IaaS environment. ✨

ngl, in most cases you're not calling this command directly β€” it's usually a Disnix command-line utility (think disnix-env, iconic) calling it for you, because you passed --interface to that utility, or because you set the DISNIX_CLIENT_INTERFACE environment variable. either one works, and when you use one of those, the Disnix tools will use that given interface instead of the standard disnix-run-activity, which β€” and I say this with love β€” only provides local access. local. πŸ™ˆ


πŸ”₯ OPTIONS πŸ”₯

πŸ’œ Operations:

  • --import β€” imports a given closure into the Nix store of the target machine. optionally, it also transfers that closure from this machine over to the target machine. 🫢
  • --export β€” exports the closure of a given Nix store path from the target machine into a file, and optionally downloads it. cute.
  • --print-invalid β€” prints all the paths that are not valid in the target machine's Nix store. the little snitch report, honestly. πŸ’€
  • -r, --realise β€” realises the given store derivation on the target machine. slay.
  • --set β€” creates a Disnix profile containing only the given derivation on the target machine.
  • -q, --query-installed β€” queries all the installed services on the given target machine. main character energy.
  • --query-requisites β€” queries all the requisites (that's the intra-dependencies, iykyk) of the given services on the target machine.
  • --collect-garbage β€” collects garbage on the given target machine. spring cleaning fr fr 🧹
  • --activate β€” activates the given service on the target machine.
  • --deactivate β€” deactivates the given service on the target machine.
  • --lock β€” acquires a lock on a Disnix profile of the target machine. πŸ”’
  • --unlock β€” releases the lock on a Disnix profile of the target machine. freedom πŸ’…
  • --snapshot β€” snapshots the logical state of a component on the given target machine.
  • --restore β€” restores the logical state of a component on the given target machine.
  • --delete-state β€” deletes the state of a component on the given machine. okay it's giving ruthless but we respect it.
  • --query-all-snapshots β€” queries all available snapshots of a component on the given target machine.
  • --query-latest-snapshot β€” queries the latest snapshot of a component on the given target machine. the freshest one ✨
  • --print-missing-snapshots β€” prints the paths of all snapshots not present on the given target machine.
  • --import-snapshots β€” imports the specified snapshots into the remote snapshot store.
  • --export-snapshots β€” exports the specified snapshot to the local snapshot store.
  • --resolve-snapshots β€” converts the relative paths to the snapshots into absolute paths. glow-up for paths.
  • --clean-snapshots β€” removes older snapshots from the snapshot store.
  • --capture-config β€” captures the configuration of the machine from the Dysnomia container properties, in a Nix expression.
  • --shell β€” spawns a Dysnomia shell so you can run arbitrary maintenance tasks. go off 🐚
  • --help β€” shows the usage of this command to the user.
  • --version β€” shows the version of this command to the user.

🌈 General options:

  • -t, --target=TARGET β€” specifies the hostname and optional port number of the SSH server used to connect to the target machine. this is the "where am I going" of it all.

πŸŽ€ Import/Export/Import snapshots/Export snapshots options:

  • --localfile β€” specifies that the given paths are stored locally and must be transferred to the remote machine if needed.
  • --remotefile β€” specifies that the given paths are stored remotely and must be transferred from the remote machine if needed.

πŸ“ Set/Query installed/Lock/Unlock options:

  • -p, --profile=PROFILE β€” name of the Disnix profile. defaults to: default.

🌸 Collect garbage options:

  • -d, --delete-old β€” indicates whether all older generations of Nix profiles must be removed as well. yes, all of them. generational trauma but for profiles. 😭

⭐ Activation/Deactivation/Snapshot/Restore/Delete state/Shell options:

  • --type=TYPE β€” specifies the activation module that should be used, such as echo or process.
  • --arguments=ARGUMENTS β€” specifies the arguments passed to the Dysnomia module, which is a string with key=value pairs.
  • --container=CONTAINER β€” name of the container in which the component is managed. if you omit it, it will default to the same value as the type. no cap.

🐚 Shell options:

  • --command=COMMAND β€” commands to execute in the shell session.

πŸ‘‘ Query all snapshots/Query latest snapshot options:

  • -C, --container=CONTAINER β€” name of the container in which the component is managed.
  • -c, --component=COMPONENT β€” name of the component hosted in a container.

πŸ’– Clean snapshots options:

  • --keep=NUM β€” amount of snapshot generations to keep. defaults to: 1.
  • -C, --container=CONTAINER β€” name of the container to filter on.
  • -c, --component=COMPONENT β€” name of the component to filter on.

🧚 ENVIRONMENT 🧚

  • NIXOPS_OPTS β€” additional properties which are passed to the nixops command.
  • DISNIX_REMOTE_CLIENT β€” name of the remote executable to run to execute a deployment activity (defaults to: disnix-run-activity).
  • DISNIX_PROFILE β€” sets the name of the profile that stores the manifest on the coordinator machine and the deployed services per machine on each target (Defaults to: default).
  • DYSNOMIA_STATEDIR β€” specifies where the snapshots must be stored on the coordinator machine (defaults to: /var/state/dysnomia).

Copyright Β© 2008-2022 Sander van der Burg


and that's the page!! this one's from the disnixos... source, version-flavored, dated ever so iconically as January 1980 β€” yeah, the date is a whole throwback, don't question it 🫢 ok bye bestie, go deploy something πŸ’œ

πŸ“¦ where this page comes from