diff options
| author | Jörg Thalheim <joerg@thalheim.io> | 2019-12-29 21:44:21 +0000 | 
|---|---|---|
| committer | tv <tv@krebsco.de> | 2019-12-30 14:15:08 +0100 | 
| commit | ea7e0c3a35e94eec5242d9344db9bc4d54056497 (patch) | |
| tree | 28d3132d3628d9e53fefec2d94a98cc564e2d94f | |
| parent | 402c9cac2595f2219efb8bb51becd337bbcb7965 (diff) | |
writeDeploy: add crossDeploy argument
| -rw-r--r-- | README.md | 11 | ||||
| -rw-r--r-- | pkgs/krops/default.nix | 3 | 
2 files changed, 14 insertions, 0 deletions
| @@ -103,6 +103,17 @@ This requires the building machine to have ssh access to the target.  To build the system on the same machine, that runs the krops command,  set up a local ssh service and set the build host to localhost. +### `crossDeploy` (optional, defaults to false) + +Use this option if target host architecture is not the same as the build host +architecture as set by `buildHost` i.e. deploying to aarch64 from a x86_64 +machine. Setting this option will disable building & running nix in the wrong +architecture when running `nixos-rebuild` on the deploying machine. It is +required to set `nixpkgs.localSystem.system` in the NixOS configuration to the +architecture of the target host. This option is only useful if the build host +also has remote builders that are capable of producing artifacts for the deploy +architecture. +  ### `fast` (optional, defaults to false)  Run `nixos-rebuild switch` immediately without building the system diff --git a/pkgs/krops/default.nix b/pkgs/krops/default.nix index 700066e..16ef936 100644 --- a/pkgs/krops/default.nix +++ b/pkgs/krops/default.nix @@ -48,6 +48,7 @@ in    writeDeploy = name: {      backup ? false,      buildTarget ? null, +    crossDeploy ? false,      fast ? false,      force ? false,      source, @@ -70,6 +71,8 @@ in        ''}        ${rebuild ([          "switch" +      ] ++ lib.optionals crossDeploy [ +        "--no-build-nix"        ] ++ lib.optionals (buildTarget' != target') [          "--build-host" "${buildTarget'.user}@${buildTarget'.host}"          "--target-host" "${target'.user}@${target'.host}" | 
