nicos

nix run github:plmercereau/nicos -- [OPTIONS] COMMAND [ARGS]...
Options
--helpShow this message and exit.
Commands
buildBuild a machine ISO image.
createCreate a new machine in the cluster.
deployDeploy one or several existing machines
initInitialise a new cluster.
installInstall a machine using nixos-anywhere.
secretsManage the secrets for the cluster

nicos build

nix run github:plmercereau/nicos -- build [OPTIONS] [MACHINE]

Build a machine ISO image.

Options
-k, --private-key-path TEXTThe path to the private key to use. Defaults to ssh_<machine>_ed25519_key.
--helpShow this message and exit.

nicos create

nix run github:plmercereau/nicos -- create [OPTIONS] [NAME]

Create a new machine in the cluster.

Options
--rekey / --no-rekeyRekey the secrets after creating the machine configuration.
--stage / --no-stageStage the changes to git.
--helpShow this message and exit.

nicos deploy

nix run github:plmercereau/nicos -- deploy [OPTIONS] [MACHINES]...

Deploy one or several existing machines

Options
--allDeploy all available machines.
--remote-buildBuild on remote host.
--helpShow this message and exit.

nicos init

nix run github:plmercereau/nicos -- init [OPTIONS]

Initialise a new cluster.

Options
--stage / --no-stageStage the changes to git.
--helpShow this message and exit.

nicos install

nix run github:plmercereau/nicos -- install [OPTIONS] [MACHINE] [IP]

Install a machine using nixos-anywhere.

Options
--user TEXTUser that will connect to the machine through nixos-anywhere.
--remote-buildbuild the closure on the remote machine instead of locally and copy-closuring it.
--helpShow this message and exit.

nicos secrets

nix run github:plmercereau/nicos -- secrets [OPTIONS] COMMAND [ARGS]...

Manage the secrets for the cluster

Options
--helpShow this message and exit.
Commands
editEdit a secret
exportExport the secrets config in the cluster as a JSON object
listList the secrets in the cluster
rekeyRekey all the secrets in the cluster.
userEdit a user password
vpnAdd or replace a Wireguard private key of a given host
wifiEdit wifi networks and passwords

nicos secrets edit

nix run github:plmercereau/nicos -- secrets edit [OPTIONS] PATH

Edit a secret

Options
--stage / --no-stageStage the changes to git.
--helpShow this message and exit.

nicos secrets export

nix run github:plmercereau/nicos -- secrets export [OPTIONS]

Export the secrets config in the cluster as a JSON object

Options
--helpShow this message and exit.

nicos secrets list

nix run github:plmercereau/nicos -- secrets list [OPTIONS]

List the secrets in the cluster

Options
--helpShow this message and exit.

nicos secrets rekey

nix run github:plmercereau/nicos -- secrets rekey [OPTIONS]

Rekey all the secrets in the cluster.

Options
--stage / --no-stageStage the changes to git.
--helpShow this message and exit.

nicos secrets user

nix run github:plmercereau/nicos -- secrets user [OPTIONS] NAME [PASSWORD]

Edit a user password

Options
--stage / --no-stageStage the changes to git.
--forceForce the change without prompt if the secret already exists.
--helpShow this message and exit.

nicos secrets vpn

nix run github:plmercereau/nicos -- secrets vpn [OPTIONS] [NAME]

Add or replace a Wireguard private key of a given host

Options
--stage / --no-stageStage the changes to git.
--forceForce the change without prompt if the secret already exists.
--helpShow this message and exit.

nicos secrets wifi

nix run github:plmercereau/nicos -- secrets wifi [OPTIONS]

Edit wifi networks and passwords

Options
--stage / --no-stageStage the changes to git.
--helpShow this message and exit.