diff options
Diffstat (limited to '4lib/tv')
| -rw-r--r-- | 4lib/tv/default.nix | 94 | 
1 files changed, 6 insertions, 88 deletions
| diff --git a/4lib/tv/default.nix b/4lib/tv/default.nix index 092a9626c..16888c214 100644 --- a/4lib/tv/default.nix +++ b/4lib/tv/default.nix @@ -1,9 +1,12 @@  { lib, pkgs, ... }: -with builtins; -with lib; +let +  krebs = import ../../4lib/krebs { inherit lib; }; +in -builtins // lib // rec { +with krebs; + +krebs // rec {    git = import ./git.nix {      lib = lib // { @@ -12,16 +15,9 @@ builtins // lib // rec {      inherit pkgs;    }; -  addName = name: set: -    set // { inherit name; }; - -  addNames = mapAttrs addName; - -    # "7.4.335" -> "74"    majmin = with lib; x : concatStrings (take 2 (splitString "." x)); -    concat = xs :      if xs == []        then "" @@ -53,82 +49,4 @@ builtins // lib // rec {        if isSafeChar c then c        else if c == "\n" then "'\n'"        else "\\${c}"); - -  types = lib.types // (with lib.types; rec { - -    host = submodule { -      options = { -        name = mkOption { -          type = label; -        }; -        dc = mkOption { -          type = label; -        }; -        cores = mkOption { -          type = positive; -        }; -        nets = mkOption { -          type = attrsOf net; -          apply = x: assert hasAttr "retiolum" x; x; -        }; -      }; -    }; - -    net = submodule ({ config, ... }: { -      options = { -        via = mkOption { -          type = nullOr net; -          default = null; -        }; -        addrs = mkOption { -          type = listOf addr; -          apply = _: config.addrs4 ++ config.addrs6; -        }; -        addrs4 = mkOption { -          type = listOf addr4; -          default = []; -        }; -        addrs6 = mkOption { -          type = listOf addr6; -          default = []; -        }; -        aliases = mkOption { -          # TODO nonEmptyListOf hostname -          type = listOf hostname; -        }; -        tinc = mkOption { -          type = let net-config = config; in submodule ({ config, ... }: { -            options = { -              config = mkOption { -                type = str; -                apply = _: '' -                  ${optionalString (net-config.via != null) -                    (concatMapStringsSep "\n" (a: "Address = ${a}") net-config.via.addrs)} -                  ${concatMapStringsSep "\n" (a: "Subnet = ${a}") net-config.addrs} -                  ${config.pubkey} -                ''; -              }; -              pubkey = mkOption { -                type = str; -              }; -            }; -          }); -        }; -      }; -    }); - -    positive = mkOptionType { -      name = "positive integer"; -      check = x: isInt x && x > 0; -      merge = mergeOneOption; -    }; - -    # TODO -    addr = str; -    addr4 = str; -    addr6 = str; -    hostname = str; -    label = str; -  }); -  } | 
