diff options
Diffstat (limited to 'krebs/4lib')
-rw-r--r-- | krebs/4lib/default.nix | 22 | ||||
-rw-r--r-- | krebs/4lib/git.nix | 7 | ||||
-rw-r--r-- | krebs/4lib/types.nix | 14 |
3 files changed, 14 insertions, 29 deletions
diff --git a/krebs/4lib/default.nix b/krebs/4lib/default.nix index 49241cc82..c40b9a868 100644 --- a/krebs/4lib/default.nix +++ b/krebs/4lib/default.nix @@ -1,19 +1,12 @@ -{ config, lib, ... }: +_: -with builtins; -with lib; - -let out = import <stockholm/lib> // rec { - - eq = x: y: x == y; - ne = x: y: x != y; +let + lib = import <stockholm/lib>; +in - mod = x: y: x - y * (x / y); - - addName = name: set: - set // { inherit name; }; +with lib; - addNames = mapAttrs addName; +let out = lib // rec { guard = spec@{ type, value, ... }: assert isOptionType type; @@ -26,12 +19,9 @@ let out = import <stockholm/lib> // rec { ])); types = import ./types.nix { - inherit config; lib = lib // { inherit genid optionalTrace; }; }; - dir.has-default-nix = path: pathExists (path + "/default.nix"); - genid = import ./genid.nix { lib = lib // out; }; genid_signed = x: ((genid x) + 16777216) / 2; git = import ./git.nix { lib = lib // out; }; diff --git a/krebs/4lib/git.nix b/krebs/4lib/git.nix index d50ba2018..005c017a9 100644 --- a/krebs/4lib/git.nix +++ b/krebs/4lib/git.nix @@ -1,7 +1,12 @@ { lib, ... }: +with lib; + let - inherit (lib) addNames escapeShellArg makeSearchPath optionalString; + addName = name: set: + set // { inherit name; }; + + addNames = mapAttrs addName; commands = addNames { git-receive-pack = {}; diff --git a/krebs/4lib/types.nix b/krebs/4lib/types.nix index 37d44606b..8d6ace2e5 100644 --- a/krebs/4lib/types.nix +++ b/krebs/4lib/types.nix @@ -1,14 +1,9 @@ -{ config, lib, ... }: +{ lib, ... }: with builtins; with lib; with types; -let - # Inherited attributes are used in submodules that have their own `config`. - inherit (config.krebs) build users; -in - types // rec { host = submodule ({ config, ... }: { @@ -27,7 +22,6 @@ types // rec { owner = mkOption { type = user; - default = users.krebs; }; extraZones = mkOption { @@ -49,10 +43,6 @@ types // rec { ssh.pubkey = mkOption { type = nullOr ssh-pubkey; default = null; - apply = x: - optionalTrace (x == null && config.owner.name == build.user.name) - "The option `krebs.hosts.${config.name}.ssh.pubkey' is unused." - x; }; ssh.privkey = mkOption { type = nullOr ssh-privkey; @@ -187,7 +177,6 @@ types // rec { }; owner = mkOption { type = user; - default = users.root; }; group-name = mkOption { type = str; @@ -284,6 +273,7 @@ types // rec { }; mail = mkOption { type = str; # TODO retiolum mail address + default = "${config._module.args.name}@${config.networking.hostName}.r"; }; name = mkOption { type = username; |