diff options
Diffstat (limited to 'tv')
40 files changed, 93 insertions, 46 deletions
diff --git a/tv/1systems/alnus.nix b/tv/1systems/alnus.nix index d3de8bdfa..bc6e3a6d8 100644 --- a/tv/1systems/alnus.nix +++ b/tv/1systems/alnus.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { imports = [ diff --git a/tv/1systems/caxi.nix b/tv/1systems/caxi.nix index 5bfacd992..59f3cd63a 100644 --- a/tv/1systems/caxi.nix +++ b/tv/1systems/caxi.nix @@ -1,6 +1,6 @@ { config, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.caxi; diff --git a/tv/1systems/cd.nix b/tv/1systems/cd.nix index 2ad4a1505..043e91510 100644 --- a/tv/1systems/cd.nix +++ b/tv/1systems/cd.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.cd; diff --git a/tv/1systems/mu.nix b/tv/1systems/mu.nix index 55f18326d..e9a8a131a 100644 --- a/tv/1systems/mu.nix +++ b/tv/1systems/mu.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { imports = [ diff --git a/tv/1systems/nomic.nix b/tv/1systems/nomic.nix index 5415e50b1..793e1f80b 100644 --- a/tv/1systems/nomic.nix +++ b/tv/1systems/nomic.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.nomic; diff --git a/tv/1systems/wu.nix b/tv/1systems/wu.nix index c2a624a91..19db559f1 100644 --- a/tv/1systems/wu.nix +++ b/tv/1systems/wu.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.wu; diff --git a/tv/1systems/xu.nix b/tv/1systems/xu.nix index 85ac23e9d..a84da38db 100644 --- a/tv/1systems/xu.nix +++ b/tv/1systems/xu.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.xu; diff --git a/tv/1systems/zu.nix b/tv/1systems/zu.nix index 0503021d4..056652e4b 100644 --- a/tv/1systems/zu.nix +++ b/tv/1systems/zu.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.build.host = config.krebs.hosts.zu; diff --git a/tv/2configs/backup.nix b/tv/2configs/backup.nix index e74ed79d8..6dd24b32f 100644 --- a/tv/2configs/backup.nix +++ b/tv/2configs/backup.nix @@ -1,5 +1,5 @@ { config, lib, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.backup.plans = { } // mapAttrs (_: recursiveUpdate { diff --git a/tv/2configs/bash.nix b/tv/2configs/bash.nix index fe87aa8d7..40c0725ed 100644 --- a/tv/2configs/bash.nix +++ b/tv/2configs/bash.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { programs.bash = { diff --git a/tv/2configs/default.nix b/tv/2configs/default.nix index 442d7370a..39d0c4f6b 100644 --- a/tv/2configs/default.nix +++ b/tv/2configs/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.enable = true; @@ -14,7 +14,7 @@ with config.krebs.lib; stockholm.file = "/home/tv/stockholm"; nixpkgs.git = { url = https://github.com/NixOS/nixpkgs; - ref = "354fd3728952c229fee4f2924737c601d7ab4725"; + ref = "e4fb65a3627f8c17a2f92c08bf302dc30f0a8db9"; }; } // optionalAttrs host.secure { secrets-master.file = "/home/tv/secrets/master"; @@ -112,6 +112,14 @@ with config.krebs.lib; }; } + (let ca-bundle = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; in { + environment.variables = { + CURL_CA_BUNDLE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; + GIT_SSL_CAINFO = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; + SSL_CERT_FILE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; + }; + }) + { services.cron.enable = false; services.nscd.enable = false; diff --git a/tv/2configs/exim-retiolum.nix b/tv/2configs/exim-retiolum.nix index ad355f8b4..bf13a388a 100644 --- a/tv/2configs/exim-retiolum.nix +++ b/tv/2configs/exim-retiolum.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.exim-retiolum.enable = true; diff --git a/tv/2configs/exim-smarthost.nix b/tv/2configs/exim-smarthost.nix index 591edafb6..cc3bdf95d 100644 --- a/tv/2configs/exim-smarthost.nix +++ b/tv/2configs/exim-smarthost.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.exim-smarthost = { diff --git a/tv/2configs/git.nix b/tv/2configs/git.nix index fd3875410..d937be2c4 100644 --- a/tv/2configs/git.nix +++ b/tv/2configs/git.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; let @@ -34,9 +34,14 @@ let load-env = {}; make-snapshot = {}; much = {}; + netcup = { + cgit.desc = "netcup command line interface"; + }; newsbot-js = {}; nixpkgs = {}; - populate.desc = "source code installer"; + populate = { + cgit.desc = "source code installer"; + }; push = {}; regfish = {}; soundcloud = { diff --git a/tv/2configs/hw/AO753.nix b/tv/2configs/hw/AO753.nix index b81b773be..8625078da 100644 --- a/tv/2configs/hw/AO753.nix +++ b/tv/2configs/hw/AO753.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { imports = [ diff --git a/tv/2configs/im.nix b/tv/2configs/im.nix index db1be7f0b..82f1be042 100644 --- a/tv/2configs/im.nix +++ b/tv/2configs/im.nix @@ -1,5 +1,5 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { environment.systemPackages = with pkgs; [ (pkgs.writeDashBin "im" '' diff --git a/tv/2configs/nginx/default.nix b/tv/2configs/nginx/default.nix index d0d07d5ca..39995c052 100644 --- a/tv/2configs/nginx/default.nix +++ b/tv/2configs/nginx/default.nix @@ -1,6 +1,6 @@ { config, lib, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.nginx = { diff --git a/tv/2configs/nginx/public_html.nix b/tv/2configs/nginx/public_html.nix index 858f16563..e0bbb8d57 100644 --- a/tv/2configs/nginx/public_html.nix +++ b/tv/2configs/nginx/public_html.nix @@ -1,6 +1,6 @@ { config, lib, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.nginx = { diff --git a/tv/2configs/pulse.nix b/tv/2configs/pulse.nix index 512919759..9c40e9b66 100644 --- a/tv/2configs/pulse.nix +++ b/tv/2configs/pulse.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; let pkg = pkgs.pulseaudioLight; runDir = "/run/pulse"; diff --git a/tv/2configs/retiolum.nix b/tv/2configs/retiolum.nix index 7179be570..ad1116d4f 100644 --- a/tv/2configs/retiolum.nix +++ b/tv/2configs/retiolum.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.tinc.retiolum = { @@ -10,7 +10,6 @@ with config.krebs.lib; "prism" "echelon" "cd" - "ire" ]; tincPackage = pkgs.tinc_pre; }; diff --git a/tv/2configs/ssh.nix b/tv/2configs/ssh.nix index 7bf583426..84d247362 100644 --- a/tv/2configs/ssh.nix +++ b/tv/2configs/ssh.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { # Override NixOS's "Allow DSA keys for now." diff --git a/tv/2configs/sshd.nix b/tv/2configs/sshd.nix index 943f32fe9..1749b552d 100644 --- a/tv/2configs/sshd.nix +++ b/tv/2configs/sshd.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { services.openssh = { diff --git a/tv/2configs/urlwatch.nix b/tv/2configs/urlwatch.nix index 89937d702..b34590908 100644 --- a/tv/2configs/urlwatch.nix +++ b/tv/2configs/urlwatch.nix @@ -1,5 +1,5 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { krebs.urlwatch = { enable = true; diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 16f540488..cc59a95a5 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; let out = { environment.systemPackages = [ diff --git a/tv/2configs/wu-binary-cache/default.nix b/tv/2configs/wu-binary-cache/default.nix index 6fcac21af..f039a552b 100644 --- a/tv/2configs/wu-binary-cache/default.nix +++ b/tv/2configs/wu-binary-cache/default.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }: with config.krebs.lib; +{ config, lib, pkgs, ... }: with import <stockholm/lib>; { services.nix-serve = assert config.krebs.build.host.name == "wu"; { enable = true; diff --git a/tv/2configs/xdg.nix b/tv/2configs/xdg.nix index f05ec5431..18bac9b38 100644 --- a/tv/2configs/xdg.nix +++ b/tv/2configs/xdg.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { environment.variables.XDG_RUNTIME_DIR = "/run/xdg/$LOGNAME"; diff --git a/tv/2configs/xserver/Xmodmap.nix b/tv/2configs/xserver/Xmodmap.nix index 02b6c730e..d2b1b2604 100644 --- a/tv/2configs/xserver/Xmodmap.nix +++ b/tv/2configs/xserver/Xmodmap.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; pkgs.writeText "Xmodmap" '' !keycode 66 = Caps_Lock diff --git a/tv/2configs/xserver/Xresources.nix b/tv/2configs/xserver/Xresources.nix index f9af89c7e..398247d27 100644 --- a/tv/2configs/xserver/Xresources.nix +++ b/tv/2configs/xserver/Xresources.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; pkgs.writeText "Xresources" /* xdefaults */ '' !URxvt*background: #050505 @@ -207,6 +207,7 @@ pkgs.writeText "Xresources" /* xdefaults */ '' URxvt*url-select.underline: true URxvt*colorUL: #4682B4 URxvt.perl-lib: ${pkgs.urxvt_perls}/lib/urxvt/perl + URxvt.saveLines: 4096 root-urxvt*background: #230000 root-urxvt*foreground: #e0c0c0 diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index 7a76530be..7dcfecce6 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -1,5 +1,5 @@ { config, pkgs, ... }@args: -with config.krebs.lib; +with import <stockholm/lib>; let user = config.krebs.build.user; in { diff --git a/tv/2configs/xserver/xserver.conf.nix b/tv/2configs/xserver/xserver.conf.nix index c452b4226..6f34e0150 100644 --- a/tv/2configs/xserver/xserver.conf.nix +++ b/tv/2configs/xserver/xserver.conf.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; let cfg = config.services.xserver; diff --git a/tv/2configs/xu-qemu0.nix b/tv/2configs/xu-qemu0.nix index 0e4a91c90..355a36650 100644 --- a/tv/2configs/xu-qemu0.nix +++ b/tv/2configs/xu-qemu0.nix @@ -15,7 +15,7 @@ in # # make [install] system=xu-qemu0 target_host=10.56.0.101 -with config.krebs.lib; +with import <stockholm/lib>; { networking.dhcpcd.denyInterfaces = [ "qemubr0" ]; diff --git a/tv/3modules/charybdis/config.nix b/tv/3modules/charybdis/config.nix index 1b160926c..5812516f1 100644 --- a/tv/3modules/charybdis/config.nix +++ b/tv/3modules/charybdis/config.nix @@ -1,4 +1,4 @@ -{ config, ... }: with config.krebs.lib; let +{ config, ... }: with import <stockholm/lib>; let cfg = config.tv.charybdis; in toFile "charybdis.conf" '' /* doc/example.conf - brief example configuration file diff --git a/tv/3modules/charybdis/default.nix b/tv/3modules/charybdis/default.nix index 3af971cd4..859dc122c 100644 --- a/tv/3modules/charybdis/default.nix +++ b/tv/3modules/charybdis/default.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }@args: with config.krebs.lib; let +{ config, lib, pkgs, ... }@args: with import <stockholm/lib>; let cfg = config.tv.charybdis; in { options.tv.charybdis = { diff --git a/tv/3modules/ejabberd/config.nix b/tv/3modules/ejabberd/config.nix index 49bded855..29c38fbe4 100644 --- a/tv/3modules/ejabberd/config.nix +++ b/tv/3modules/ejabberd/config.nix @@ -1,4 +1,4 @@ -{ config, ... }: with config.krebs.lib; let +{ config, ... }: with import <stockholm/lib>; let cfg = config.tv.ejabberd; # XXX this is a placeholder that happens to work the default strings. diff --git a/tv/3modules/ejabberd/default.nix b/tv/3modules/ejabberd/default.nix index 95ea24be1..4d3493d78 100644 --- a/tv/3modules/ejabberd/default.nix +++ b/tv/3modules/ejabberd/default.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }@args: with config.krebs.lib; let +{ config, lib, pkgs, ... }@args: with import <stockholm/lib>; let cfg = config.tv.ejabberd; in { options.tv.ejabberd = { diff --git a/tv/3modules/hosts.nix b/tv/3modules/hosts.nix index 7bf3267c7..118740510 100644 --- a/tv/3modules/hosts.nix +++ b/tv/3modules/hosts.nix @@ -1,6 +1,6 @@ { config, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { options.tv.hosts = mkOption { diff --git a/tv/3modules/iptables.nix b/tv/3modules/iptables.nix index 4b1d1ef87..7276726ca 100644 --- a/tv/3modules/iptables.nix +++ b/tv/3modules/iptables.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; let cfg = config.tv.iptables; diff --git a/tv/5pkgs/default.nix b/tv/5pkgs/default.nix index 3590ad572..4eb8a10b4 100644 --- a/tv/5pkgs/default.nix +++ b/tv/5pkgs/default.nix @@ -1,7 +1,24 @@ { config, pkgs, ... }: -with config.krebs.lib; +with import <stockholm/lib>; { - nixpkgs.config.packageOverrides = super: { + nixpkgs.config.packageOverrides = super: let + + # This callPackage will try to detect obsolete overrides. + callPackage = path: args: let + override = super.callPackage path args; + upstream = optionalAttrs (override ? "name") + (super.${(parseDrvName override.name).name} or {}); + in if upstream ? "name" && + override ? "name" && + compareVersions upstream.name override.name != -1 + then trace "Upstream `${upstream.name}' gets overridden by `${override.name}'." override + else override; + + in {} + // mapAttrs (_: flip callPackage {}) + (filterAttrs (_: dir: pathExists (dir + "/default.nix")) + (subdirsOf ./.)) + // { # TODO use XDG_RUNTIME_DIR? cr = pkgs.writeDashBin "cr" '' set -efu @@ -12,7 +29,7 @@ with config.krebs.lib; --disk-cache-size=50000000 \ "$@" ''; - ejabberd = pkgs.callPackage ./ejabberd { + ejabberd = callPackage ./ejabberd { erlang = pkgs.erlangR16; }; ff = pkgs.writeDashBin "ff" '' @@ -22,8 +39,5 @@ with config.krebs.lib; if elem config.krebs.build.host.name ["xu" "wu"] then super.gnupg21 else super.gnupg; - q = pkgs.callPackage ./q {}; - viljetic-pages = pkgs.callPackage ./viljetic-pages {}; - xmonad-tv = import ./xmonad-tv.nix { inherit pkgs; }; }; } diff --git a/tv/5pkgs/djbdns/default.nix b/tv/5pkgs/djbdns/default.nix new file mode 100644 index 000000000..ad5a530bd --- /dev/null +++ b/tv/5pkgs/djbdns/default.nix @@ -0,0 +1,20 @@ +{ coreutils, gawk, fetchurl, stdenv, ... }: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "djbdns-1.05"; + src = fetchurl { + url = "http://cr.yp.to/djbdns/djbdns-1.05.tar.gz"; + sha256 = "0j3baf92vkczr5fxww7rp1b7gmczxmmgrqc8w2dy7kgk09m85k9w"; + }; + configurePhase = '' + echo $out > conf-home + echo gcc -O2 -include errno.h > conf-cc + ''; + patchPhase = '' + sed -i 's:c("/","etc","dnsroots.global",-1,-1,0644);:// &:' hier.c + sed -i '1s@^@PATH=${makeBinPath [ coreutils gawk ]}\n@' dnstracesort.sh + ''; + installTargets = "setup check"; +} diff --git a/tv/5pkgs/xmonad-tv.nix b/tv/5pkgs/xmonad-tv/default.nix index c6a622bd1..c6a622bd1 100644 --- a/tv/5pkgs/xmonad-tv.nix +++ b/tv/5pkgs/xmonad-tv/default.nix |