about summary refs log tree commit diff
path: root/modules
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2017-04-23 19:43:19 +0200
committeraszlig <aszlig@redmoonstudios.org>2017-04-23 19:43:19 +0200
commit370fd067b60d4117b81f46a67feeb63bf965b5d2 (patch)
treebe748e5f35c43d2886db155b32409e30e702ce71 /modules
parentea04b4fb4a7f2db3351522066b3e08a77f7d35da (diff)
taalo-build: Use Nix 1.11 for the backend
Nix 1.12 already got rid of most of the Perl stuff so the Perl script
backing taalo-build doesn't work anymore because Nix/CopyClosure.pm is
no longer available.

One way to fix this properly is to part the backend to C++ and use the
new ssh-ng store backend. This would also have the advantage that we
don't need to hardcode protocol internals here anymore.

Unfortunately, Nix 1.12 isn't stable yet and we would break Nix 1.11 if
we use the new store API.

So that's why I'm pinning the backend to use Nix 1.11 instead and leave
that ugly Perl script until Nix 1.2 is stable.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'modules')
-rw-r--r--modules/user/aszlig/programs/taalo-build/default.nix11
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/user/aszlig/programs/taalo-build/default.nix b/modules/user/aszlig/programs/taalo-build/default.nix
index 55356e9f..5fb09438 100644
--- a/modules/user/aszlig/programs/taalo-build/default.nix
+++ b/modules/user/aszlig/programs/taalo-build/default.nix
@@ -1,8 +1,17 @@
 { config, pkgs, lib, ... }:
 
 let
+  # Make sure we use a Nix version prior to 1.12, because taalo currently uses
+  # the legacy SSH protocol, so we can't use the ssh-ng store backend here.
+  #
+  # Apart from that, even if we would use the new store backend we would break
+  # the taalo-build backend for Nix 1.11.
+  inherit (import (import (../../../../../nixpkgs-path.nix)) {
+    config = {};
+  }) nix;
+
   backend = pkgs.writeScript "taalo-realize-backend" ''
-    #!${pkgs.perl}/bin/perl -I${pkgs.nix}/lib/perl5/site_perl
+    #!${pkgs.perl}/bin/perl -I${nix}/lib/perl5/site_perl
     use strict;
     use Nix::CopyClosure;
     use Nix::SSH;