summaryrefslogtreecommitdiffstats
path: root/krebs/4lib
diff options
context:
space:
mode:
Diffstat (limited to 'krebs/4lib')
-rw-r--r--krebs/4lib/default.nix22
-rw-r--r--krebs/4lib/git.nix7
-rw-r--r--krebs/4lib/types.nix14
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;