diff options
author | aszlig <aszlig@nix.build> | 2017-11-12 20:40:59 +0100 |
---|---|---|
committer | aszlig <aszlig@nix.build> | 2017-11-12 20:40:59 +0100 |
commit | b5954cf18c7933bde5d952821a8457b64da52d65 (patch) | |
tree | 9c21b93208ce2af517a634ca023d087b745dfb39 /pkgs/taalo-build | |
parent | 9fcd4d0350670b1b7c4edf9c57e5bced82f23134 (diff) |
taalo-build: Rewrite as wrapper and move to pkgs
We no longer use the legacy SSH store protocol for taalo but the new ssh-ng protocol, which makes the implementation of taalo-build a LOT less clunky. It also didn't make sense to have this as a NixOS module when we after all just emit a static store path without any stuff depending on configuration options. The new implementation basically just wraps nix-build and nix-store -r along with the right NIX_REMOTE variable. With Nix 1.2 this can also be done with the new "nix build" command using the --store option, but unfortunately "nix build" doesn't yet have the same functionality as nix-build. Signed-off-by: aszlig <aszlig@nix.build> Cc: @Profpatsch, @bendlas
Diffstat (limited to 'pkgs/taalo-build')
-rw-r--r-- | pkgs/taalo-build/default.nix | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/pkgs/taalo-build/default.nix b/pkgs/taalo-build/default.nix new file mode 100644 index 00000000..d9ff8976 --- /dev/null +++ b/pkgs/taalo-build/default.nix @@ -0,0 +1,19 @@ +{ stdenv, lib, runCommand, nixUnstable }: + +let + nixRemote = "ssh-ng://nix-remote-build@taalo.headcounter.org?compress=true"; + + mkScript = cmd: lib.escapeShellArg '' + #!${stdenv.shell} + export NIX_REMOTE=${lib.escapeShellArg nixRemote} + exec ${lib.escapeShellArg nixUnstable}/bin/${cmd} "$@" + ''; + +in runCommand "taalo-build" {} '' + mkdir -p "$out/bin" + + echo -n ${mkScript "nix-build"} > "$out/bin/taalo-build" + echo -n ${mkScript "nix-store -r"} > "$out/bin/taalo-realize" + + chmod +x "$out"/bin/taalo-{build,realize} +'' |