1
0
Fork 0
nixos/configuration.nix

28 lines
793 B
Nix
Raw Normal View History

{ lib, ... }:
2019-02-26 13:44:40 +01:00
2020-03-28 20:03:48 +01:00
with builtins;
with lib;
2019-02-26 13:44:40 +01:00
let
2020-03-28 20:03:48 +01:00
fn = import ./fn.nix { inherit lib; };
# hostName can be set with -I hostName=$HOSTNAME, defaults to the contents of /secret/hostName
2020-03-28 20:03:48 +01:00
hostName = let
hostVal = (tryEval <hostName>).value;
in fn.ifelse (hostVal != false)
hostVal
(fileContents /secret/hostName);
machinePath = (builtins.toPath ( ./machines + ("/" + hostName)));
machineFiles = fn.lst { p = machinePath; b = true; };
configFiles = fn.lst { p = (toString ./config); b = true; };
pkgsFiles = fn.lst { p = (toString ./pkgs); b = true; };
serviceFiles = fn.lst { p = (toString ./services); b = true; };
in {
2019-02-26 13:44:40 +01:00
imports = [
./options/machine.nix
./services/mailserver/default.nix
] ++ machineFiles
++ configFiles
++ pkgsFiles
++ serviceFiles;
2019-02-26 13:44:40 +01:00
}