summaryrefslogtreecommitdiffstats
path: root/krebs/4lib/default.nix
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2016-10-20 20:21:59 +0200
committertv <tv@krebsco.de>2016-10-20 20:21:59 +0200
commit844d347ce7cf0b7646e9ecba3fbdc0b90e608501 (patch)
tree32827cb69265c117abee1654ae6cf581a9a5c87c /krebs/4lib/default.nix
parent91d6bd66f4d50d47692f55c16bfb14bdf4837520 (diff)
lib: import bulk of krebs/4lib
Diffstat (limited to 'krebs/4lib/default.nix')
-rw-r--r--krebs/4lib/default.nix59
1 files changed, 0 insertions, 59 deletions
diff --git a/krebs/4lib/default.nix b/krebs/4lib/default.nix
deleted file mode 100644
index c40b9a868..000000000
--- a/krebs/4lib/default.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-_:
-
-let
- lib = import <stockholm/lib>;
-in
-
-with lib;
-
-let out = lib // rec {
-
- guard = spec@{ type, value, ... }:
- assert isOptionType type;
- if type.check value
- then value
- else throw (toString (filter isString [
- "argument"
- (if spec ? name then "‘${spec.name}’" else null)
- "is not a ${type.name}"
- ]));
-
- types = import ./types.nix {
- lib = lib // { inherit genid optionalTrace; };
- };
-
- genid = import ./genid.nix { lib = lib // out; };
- genid_signed = x: ((genid x) + 16777216) / 2;
- git = import ./git.nix { lib = lib // out; };
- tree = import ./tree.nix { inherit lib; };
-
- lpad = n: c: s:
- if stringLength s < n
- then lpad n c (c + s)
- else s;
-
- toC = x: let
- type = typeOf x;
- reject = throw "cannot convert ${type}";
- in {
- list = "{ ${concatStringsSep ", " (map toC x)} }";
- null = "NULL";
- set = if isDerivation x then toJSON x else reject;
- string = toJSON x; # close enough
- }.${type} or reject;
-
- subdirsOf = path:
- mapAttrs (name: _: path + "/${name}")
- (filterAttrs (_: eq "directory") (readDir path));
-
- genAttrs' = names: f: listToAttrs (map f names);
-
- getAttrs = names: set:
- listToAttrs (map (name: nameValuePair name set.${name})
- (filter (flip hasAttr set) names));
-
- setAttr = name: value: set: set // { ${name} = value; };
-
- optionalTrace = c: msg: x: if c then trace msg x else x;
-
-}; in out