Manage machines and their configuration
Usage: clan machines
generations: list generations of machines
init-hardware-config: This command will use kexec to boot the target into a minimal NixOS environment to gather the hardware information.If you want to manually ssh into the target after this command use ssh root@<ip> -i ~/.config/clan/nixos-anywhere/keys/id_ed25519
The target must be a Linux based system reachable via SSH.
install: Install a configured machine over the network.The target must be a Linux based system reachable via SSH. Installing a machine means overwriting the target's disk.
list:
update-hardware-config: Generates hardware specifics for a machine. Such as the host platform, available kernel modules, etc. The target must be a Linux based system reachable via SSH
This subcommand provides an interface to machines managed by Clan.
$ clan machines list
List all the machines managed by Clan.
$ clan machines update [MACHINES]
Will update the specified machines [MACHINES], if [MACHINES] is omitted, the command will attempt to update every configured machine.
$ clan machines install [MACHINE] --target-host [TARGET_HOST]
Will install the specified machine [MACHINE] to the specified [TARGET_HOST].
If the --target-host flag is omitted will try to find host information by
checking the deployment configuration inside the specified machine.
For more detailed information, visit: deploy
Usage: clan machines build
<MACHINE> Machine(s) to build. If no machines are specified, all machines will be built.toplevel) Build format: 'toplevel' or 'vm' for special builds, or any format name for config.system.build.images.{format} (e.g., 'iso', 'sd-card'). Default: %(default)s.<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableUsage: clan machines create
new-machine) Reference to the template to use for the machine. default="new-machine". In the format <flake_ref>#template_name Where <flake_ref> is a flake reference (e.g. github:org/repo) or a local path (e.g. '.' ).
Omitting <flake_ref># will use the builtin templates (e.g. just 'new-machine' from clan-core ).<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableUsage: clan machines delete
<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variablelist generations of machines
Usage: clan machines generations
<MACHINE> Machine to update. If no machines are specified, all machines that don't require explicit updates will be updated.ask) Host key (.ssh/known_hosts) check mode.<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableThis command will use kexec to boot the target into a minimal NixOS environment to gather the hardware information.
If you want to manually ssh into the target after this command use ssh root@<ip> -i ~/.config/clan/nixos-anywhere/keys/id_ed25519
The target must be a Linux based system reachable via SSH.
Usage: clan machines init-hardware-config
ask) Host key (.ssh/known_hosts) check mode.nixos-facter) The type of hardware report to generate.<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableInstall a configured machine over the network. The target must be a Linux based system reachable via SSH. Installing a machine means overwriting the target's disk.
Usage: clan machines install
ask) Host key (.ssh/known_hosts) check mode.none) Update the hardware configuration (auto-prompted if missing in interactive mode)<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableUsage: clan machines list
<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableUsage: clan machines morph
new-machine) The name of the template to useTrue) Don't use unless you know what you are doing!<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variableUsage: clan machines update
<MACHINE> Machine to update. If no machines are specified, all machines that don't require explicit updates will be updated.ask) Host key (.ssh/known_hosts) check mode.<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variable Generates hardware specifics for a machine. Such as the host platform, available kernel modules, etc.
The target must be a Linux based system reachable via SSH
Usage: clan machines update-hardware-config
ask) Host key (.ssh/known_hosts) check mode.nixos-facter) The type of hardware report to generate.<('name', 'value')> Nix option to set<PATH> path to the flake where the clan resides in, can be a remote flake or local, can be set through the [CLAN_DIR] environment variable