diff options
| -rw-r--r-- | krebs/3modules/retiolum.nix | 29 | 
1 files changed, 16 insertions, 13 deletions
diff --git a/krebs/3modules/retiolum.nix b/krebs/3modules/retiolum.nix index 2bf8aa5db..3ebb5e230 100644 --- a/krebs/3modules/retiolum.nix +++ b/krebs/3modules/retiolum.nix @@ -64,6 +64,21 @@ let        '';      }; +    hostsPackage = mkOption { +      type = types.package; +      default = pkgs.stdenv.mkDerivation { +        name = "${cfg.netname}-tinc-hosts"; +        phases = [ "installPhase" ]; +        installPhase = '' +          mkdir $out +          ${concatStrings (mapAttrsToList (_: host: '' +            echo ${shell.escape host.nets.${cfg.netname}.tinc.config} \ +              > $out/${shell.escape host.name} +          '') cfg.hosts)} +        ''; +      }; +    }; +      iproutePackage = mkOption {        type = types.package;        default = pkgs.iproute; @@ -130,18 +145,6 @@ let    tinc = cfg.tincPackage; -  tinc-hosts = pkgs.stdenv.mkDerivation { -    name = "${cfg.netname}-tinc-hosts"; -    phases = [ "installPhase" ]; -    installPhase = '' -      mkdir $out -      ${concatStrings (mapAttrsToList (_: host: '' -        echo ${shell.escape host.nets.${cfg.netname}.tinc.config} \ -          > $out/${shell.escape host.name} -      '') cfg.hosts)} -    ''; -  }; -    iproute = cfg.iproutePackage;    confDir = pkgs.runCommand "retiolum" { @@ -153,7 +156,7 @@ let      mkdir -p $out -    ln -s ${tinc-hosts} $out/hosts +    ln -s ${cfg.hostsPackage} $out/hosts      cat > $out/tinc.conf <<EOF      Name = ${cfg.name}  | 
