diff options
Diffstat (limited to 'krebs')
| -rw-r--r-- | krebs/3modules/per-user.nix | 44 | ||||
| -rw-r--r-- | krebs/3modules/tv/default.nix | 32 | ||||
| -rw-r--r-- | krebs/5pkgs/simple/urlwatch/default.nix | 23 | ||||
| -rw-r--r-- | krebs/5pkgs/simple/withGetopt.nix | 2 | 
4 files changed, 66 insertions, 35 deletions
| diff --git a/krebs/3modules/per-user.nix b/krebs/3modules/per-user.nix index 1b8d092bb..a7a07a8e6 100644 --- a/krebs/3modules/per-user.nix +++ b/krebs/3modules/per-user.nix @@ -1,38 +1,34 @@ -{ config, lib, pkgs, ... }: -  with import <stockholm/lib>; - -let +{ config, pkgs, ... }: let    cfg = config.krebs.per-user; - -  out = { -    options.krebs.per-user = api; -    config = imp; -  }; - -  api = mkOption { -    type = with types; attrsOf (submodule { +in { +  options.krebs.per-user = mkOption { +    type = types.attrsOf (types.submodule {        options = {          packages = mkOption { -          type = listOf path; +          type = types.listOf types.path;            default = [];          };        };      });      default = {};    }; - -  imp = { +  config = {      environment = { -      etc = flip mapAttrs' cfg (name: { packages, ... }: { -        name = "per-user/${name}"; -        value.source = pkgs.symlinkJoin { -          name = "per-user.${name}"; -          paths = packages; -        }; -      }); +      etc = +        mapAttrs' +          (name: per-user: { +            name = "per-user/${name}"; +            value.source = pkgs.buildEnv { +              name = "per-user.${name}"; +              paths = per-user.packages; +              pathsToLink = [ +                "/bin" +              ]; +            }; +          }) +          (filterAttrs (_: per-user: per-user.packages != []) cfg);        profiles = ["/etc/per-user/$LOGNAME"];      };    }; - -in out +} diff --git a/krebs/3modules/tv/default.nix b/krebs/3modules/tv/default.nix index e80becfa7..98145274c 100644 --- a/krebs/3modules/tv/default.nix +++ b/krebs/3modules/tv/default.nix @@ -254,6 +254,36 @@ with import <stockholm/lib>;        ssh.privkey.path = <secrets/ssh.id_ed25519>;        ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIcJvu8JDVzObLUtlAQg9qVugthKSfitwCljuJ5liyHa";      }; +    querel = { +      ci = true; +      cores = 2; +      nets = { +        retiolum = { +          ip4.addr = "10.243.22.22"; +          ip6.addr = "42::2222"; +          aliases = [ +            "querel.r" +          ]; +          tinc.pubkey = '' +            -----BEGIN RSA PUBLIC KEY----- +            MIICCgKCAgEArv9eB8acpUhJwRaLY9kGeM7DEPvInVvoduEbec10p4Y2PFx2MjSz +            2OhyxFRkONC4EMV9oVTKD+NRtpbRGZGLYD8ZPB622SvccgB0XnL6ZZfie1feSgrn +            bPyVnX8EnEgtx9IQckHyaxWgtyrluJnY2CbLkCYgD+50KFT12rdHyAa3+QoYU65x +            ACQo28i9xIpsl6dm7iWBb+ecHc7fST35OqWywtVxSpHPe1nvwaYm1p3rqqtkCGVh +            iXE5ruAscri7Dskc5dGR1p7LquhBaebuylH6sfRKA6kre05+/IkXi+JLeAmAtJ+W +            xezYlecEvxhguql9ZmSYAYkR4KknZb56KtvCnm29o0evvEpsaYcbtgq1D0JhoGyk +            4DixS5e+5dg470icVKxPfz1AzejxrTUTtMlI28qjAIx1FcmCBGM+T6yHs/MhNGbf +            aqUmN+FwtsJ2QWFYqu9zjxxyAfrAw+gqHm0LnsKK1ttwF/2fYCTRLowY+ItB3axs +            UVq7DQxyunyYalKGX2RSJ5BHczREHrfgX43HCSlcAuMuow9jHLOjzul0A49rSZ9E +            vOPqbjrki0KEEQj0HN3Ax4UVqZ6mPWaTQzuup+bPQ/2Sjkx6COzMSAPmKo4l6DkA +            J++ZonpnOCUkwCeCU6qJgMuHeXn0uh117Ypj/3J9eKYMO/RTSs3x8l0CAwEAAQ== +            -----END RSA PUBLIC KEY----- +          ''; +        }; +      }; +      ssh.privkey.path = <secrets/ssh.id_ed25519>; +      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPFM2GdL9yOjSBmYBE07ClywNOADc/zxqXwZuWd7Mael root@querel.r"; +    };      xu = {        binary-cache = {          pubkey = "xu-1:pYRENvaxZqGeImwLA9qHmRwHV4jfKaYx4u1VcZ31x0s="; @@ -339,6 +369,8 @@ with import <stockholm/lib>;      dv = {        mail = "dv@alnus.r";      }; +    itak = { +    };      mv-ni = {        mail = "mv@ni.r";        pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGer9e2+Lew7vnisgBbsFNECEIkpNJgEaqQqgb9inWkQ mv@vod"; diff --git a/krebs/5pkgs/simple/urlwatch/default.nix b/krebs/5pkgs/simple/urlwatch/default.nix index adaefbc4d..ebf872568 100644 --- a/krebs/5pkgs/simple/urlwatch/default.nix +++ b/krebs/5pkgs/simple/urlwatch/default.nix @@ -1,14 +1,18 @@ -{ stdenv, fetchurl, python3Packages }: +{ stdenv, fetchFromGitHub, python3Packages }: -python3Packages.buildPythonPackage rec { -  name = "urlwatch-${meta.version}"; +python3Packages.buildPythonApplication rec { +  name = "urlwatch-${version}"; +  version = "2.7"; -  src = fetchurl { -    url = "https://github.com/thp/urlwatch/archive/${meta.version}.tar.gz"; -    sha256 = "09bn31gn03swi7yr3s1ql8x07hx96gap1ka77kk44kk0lvfxn55b"; +  src = fetchFromGitHub { +    owner  = "thp"; +    repo   = "urlwatch"; +    rev    = version; +    sha256 = "0fx964z73yv08b1lpymmjsigf6929zx9ax5bp34rcf2c5gk11l5m";    };    propagatedBuildInputs = with python3Packages; [ +    appdirs      keyring      minidb      pycodestyle @@ -16,11 +20,10 @@ python3Packages.buildPythonPackage rec {      requests    ]; -  meta = { +  meta = with stdenv.lib; {      description = "A tool for monitoring webpages for updates";      homepage = https://thp.io/2008/urlwatch/; -    license = stdenv.lib.licenses.bsd3; -    maintainers = [ stdenv.lib.maintainers.tv ]; -    version = "2.6"; +    license = licenses.bsd3; +    maintainers = with maintainers; [ tv ];    };  } diff --git a/krebs/5pkgs/simple/withGetopt.nix b/krebs/5pkgs/simple/withGetopt.nix index 179051bdf..d20802fb2 100644 --- a/krebs/5pkgs/simple/withGetopt.nix +++ b/krebs/5pkgs/simple/withGetopt.nix @@ -20,7 +20,7 @@ opt-spec: cmd-spec: let    # true if b requires a to define its default value    opts-before = a: b: -    test ".*[$]${stringAsChars (c: "[${c}]") a.varname}\\>.*" (b.default or ""); +    test ".*[$]${stringAsChars (c: "[${c}]") a.varname}([^0-9A-Za-z_].*)?" (b.default or "");    opts-list = let      sort-out = toposort opts-before (attrValues opts); | 
