runNixOS
runNixOS :: AttrSet → Effect
Deploy a NixOS configuration to a machine.
Parameters
config
You may want to use configuration instead.
This option allows you to insert a custom NixOS invocation, in case your configuration has already been invoked with the module system.
When this option is set, system, configuration and nixpkgs are ignored.
configuration
A NixOS configuration file or module.
Example: configuration = ./configuration.nix;
Required, unless you invoke the module system yourself via xref:param-config.
nixpkgs
Path of the Nixpkgs sources to use. These also include the NixOS sources.
Default: pkgs.path, where pkgs is the Nixpkgs invocation that included the effects overlay.
system
The Nix system of the machine to deploy.
Example: system = "x86_64-linux";
Example: system = "aarch64-linux";
Required, unless you pass the module system result via xref:param-config.
userSetupScript
Example:
userSetupScript = ''
writeSSHKey
cat >>~/.ssh/known_hosts <<EOF
203.0.113.2 ecdsa-sha2-nistp256 AA.....pw=
EOF
'';
See:
Return value
An effect that switches the NixOS system as configured.
The effect has the following attributes in addition to the attributes returned
by mkEffect.
config
The config parameter of the module system. This can be used to inspect the
system configuration before committing it. For example:
nix repl ci.nix
nix-repl> my-host.prebuilt.config.services.postgresql.enable
false
prebuilt
A derivation representing the built system configuration.
prebuilt.config
Same as config.
See also
-
Deploy a NixOS Machine — a step by step guide to deploy to an existing NixOS machine
-
runNixOps— provision interrelated machine configurations and other cloud resources -
runArion— deploy services to Docker using NixOS, Nix or Docker-based images -
runNixDarwin— the macOS equivalent for deploying to a single Apple machine configured with nix-darwin