From f076edf90a47117dcf4029e6458b59b7f318fa8e Mon Sep 17 00:00:00 2001 From: tv Date: Thu, 23 Jul 2015 18:20:41 +0200 Subject: [PATCH 1/4] 2 tv git-public: s/shitment/stockholm/ --- 2configs/tv/git-public.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/2configs/tv/git-public.nix b/2configs/tv/git-public.nix index aef83667f..7babcbb5b 100644 --- a/2configs/tv/git-public.nix +++ b/2configs/tv/git-public.nix @@ -22,8 +22,8 @@ let (public "quipper") (public "regfish") (public' { - name = "shitment"; - desc = "turn all the computers into one computer!"; + name = "stockholm"; + desc = "take all the computers hostage, they'll love you!"; }) (public "wai-middleware-time") (public "web-routes-wai-custom") From b2f4cc4b124f7fa67203e0b46cc308eab6813f5e Mon Sep 17 00:00:00 2001 From: makefu Date: Thu, 23 Jul 2015 19:07:27 +0200 Subject: [PATCH 2/4] 3 tv.retiolum: describe connectTo --- 3modules/tv/retiolum.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/3modules/tv/retiolum.nix b/3modules/tv/retiolum.nix index ca1418c32..e8a1f6c2b 100644 --- a/3modules/tv/retiolum.nix +++ b/3modules/tv/retiolum.nix @@ -82,7 +82,11 @@ let connectTo = mkOption { type = types.listOf types.str; default = [ "fastpoke" "pigstarter" "kheurop" ]; - description = "TODO describe me"; + description = '' + The list of hosts in the network which the client will try to connect + to. These hosts should have an 'Address' configured which points to a + routeable IPv4 or IPv6 address. + ''; }; }; From 9be3c091d31d3ffc1d18a67bbf2523e4afc796cd Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 24 Jul 2015 00:24:12 +0200 Subject: [PATCH 3/4] 2 tv git-public: simplify --- 2configs/tv/git-public.nix | 157 ++++++++++++++++++------------------- 1 file changed, 75 insertions(+), 82 deletions(-) diff --git a/2configs/tv/git-public.nix b/2configs/tv/git-public.nix index 7babcbb5b..7222f99eb 100644 --- a/2configs/tv/git-public.nix +++ b/2configs/tv/git-public.nix @@ -1,87 +1,80 @@ { config, lib, pkgs, ... }: - -with lib; +with import ../../4lib/tv { inherit lib pkgs; }; let - inherit (builtins) map readFile; - inherit (lib) concatMap listToAttrs; - # TODO lib should already include our stuff - inherit (import ../../4lib/tv { inherit lib pkgs; }) addNames git; - public-git-repos = [ - (public "cgserver") - (public "crude-mail-setup") - (public "dot-xmonad") - (public "hack") - (public "load-env") - (public "make-snapshot") - (public "mime") - (public "much") - (public "nixos-infest") - (public "nixpkgs") - (public "painload") - (public "quipper") - (public "regfish") - (public' { - name = "stockholm"; - desc = "take all the computers hostage, they'll love you!"; - }) - (public "wai-middleware-time") - (public "web-routes-wai-custom") - (public "xintmap") - ]; - - users = addNames { - tv = { pubkey = readFile ../../Zpubkeys/tv_wu.ssh.pub; }; - lass = { pubkey = readFile ../../Zpubkeys/lass.ssh.pub; }; - uriel = { pubkey = readFile ../../Zpubkeys/uriel.ssh.pub; }; - makefu = { pubkey = readFile ../../Zpubkeys/makefu.ssh.pub; }; - }; - - repos = listToAttrs (map ({ repo, ... }: { name = repo.name; value = repo; }) public-git-repos); - - rules = concatMap ({ rules, ... }: rules) public-git-repos; - - public' = { name, desc }: - let - x = public name; - in - x // { repo = x.repo // { inherit desc; }; }; - - public = repo-name: - rec { - repo = { - name = repo-name; - hooks = { - post-receive = git.irc-announce { - nick = config.networking.hostName; # TODO make this the default - channel = "#retiolum"; - server = "cd.retiolum"; - }; - }; - public = true; - }; - rules = with git; with users; [ - { user = tv; - repo = [ repo ]; - perm = push "refs/*" [ non-fast-forward create delete merge ]; - } - { user = [ lass makefu uriel ]; - repo = [ repo ]; - perm = fetch; - } - ]; + out = { + imports = [ ../../3modules/tv/git.nix ]; + tv.git = { + enable = true; + root-title = "public repositories at ${config.tv.identity.self.name}"; + root-desc = "keep calm and engage"; + inherit repos rules users; }; - -in - -{ - imports = [ - ../../3modules/tv/git.nix - ]; - tv.git = { - enable = true; - inherit repos rules users; - root-title = "public repositories at ${config.networking.hostName}"; - root-desc = "keep calm and engage"; }; -} + + repos = public-repos; + rules = concatMap make-rules (attrValues repos); + + public-repos = mapAttrs make-public-repo { + cgserver = {}; + crude-mail-setup = {}; + dot-xmonad = {}; + hack = {}; + load-env = {}; + make-snapshot = {}; + mime = {}; + much = {}; + nixos-infest = {}; + nixpkgs = {}; + painload = {}; + quipper = {}; + regfish = {}; + stockholm = { + desc = "take all the computers hostage, they'll love you!"; + }; + wai-middleware-time = {}; + web-routes-wai-custom = {}; + xintmap = {}; + }; + + # TODO move users to separate module + users = mapAttrs make-user { + tv = ../../Zpubkeys/tv_wu.ssh.pub; + lass = ../../Zpubkeys/lass.ssh.pub; + uriel = ../../Zpubkeys/uriel.ssh.pub; + makefu = ../../Zpubkeys/makefu.ssh.pub; + }; + + make-public-repo = name: { desc ? null, ... }: { + inherit name desc; + public = true; + hooks = { + post-receive = git.irc-announce { + # TODO make nick = config.tv.identity.self.name the default + nick = config.tv.identity.self.name; + channel = "#retiolum"; + server = "cd.retiolum"; + }; + }; + }; + + make-rules = + with git // users; + repo: + singleton { + user = tv; + repo = [ repo ]; + perm = push "refs/*" [ non-fast-forward create delete merge ]; + } ++ + optional repo.public { + user = [ lass makefu uriel ]; + repo = [ repo ]; + perm = fetch; + }; + + make-user = name: pubkey-file: { + inherit name; + pubkey = readFile pubkey-file; + }; + +in out From ea498c46bc98771ab0e66eec21612cbf78b3ef01 Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 24 Jul 2015 09:38:59 +0200 Subject: [PATCH 4/4] tv urlwatch: simple-evcorr has moved to GitHub --- 1systems/tv/wu.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1systems/tv/wu.nix b/1systems/tv/wu.nix index 400005cb7..76bb43eca 100644 --- a/1systems/tv/wu.nix +++ b/1systems/tv/wu.nix @@ -168,7 +168,7 @@ in # then we have to update the package # ref src/nixpkgs/pkgs/tools/admin/sec/default.nix - http://simple-evcorr.sourceforge.net/ + https://api.github.com/repos/simple-evcorr/sec/tags # ref src/nixpkgs/pkgs/tools/networking/urlwatch/default.nix https://thp.io/2008/urlwatch/