From 86c552563552b838b17e5cbd38f060271edeb639 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 03:19:37 +0200 Subject: much: 0.0.0.0 -> 1.0.0 --- krebs/5pkgs/much/default.nix | 58 +++++++++++++++++++++++++++++++++----------- 1 file changed, 44 insertions(+), 14 deletions(-) diff --git a/krebs/5pkgs/much/default.nix b/krebs/5pkgs/much/default.nix index 82586b422..f28e0b5bc 100644 --- a/krebs/5pkgs/much/default.nix +++ b/krebs/5pkgs/much/default.nix @@ -1,9 +1,25 @@ { pkgs, ... }: let - hspkgs = pkgs.haskellngPackages.override { - overrides = self: super: { - email-header = self.callPackage ( + hspkgs = pkgs.haskellngPackages.override { + overrides = self: super: { + blessings = self.callPackage ( +{ mkDerivation, base, fetchgit, stdenv }: +mkDerivation { + pname = "blessings"; + version = "1.0.0"; + src = fetchgit { + url = http://cgit.cd.retiolum/blessings; + rev = "25a510dcb38ea9158e9969d56eb66cb1b860ab5f"; + sha256 = "b962153e80e51519b52220199d8350b54154833e4bc25a792ecc58898fef3fb2"; + }; + libraryHaskellDepends = [ base ]; + doHaddock = false; + # WTFPL is the true license, which is unknown to cabal. + license = stdenv.lib.licenses.wtfpl; +} +) {}; + email-header = self.callPackage ( { mkDerivation, attoparsec, base, base64-bytestring, bytestring , case-insensitive, containers, exceptions, fetchgit, QuickCheck , stdenv, tasty, tasty-quickcheck, text, text-icu, time @@ -29,6 +45,20 @@ mkDerivation { description = "Parsing and rendering of email and MIME headers"; license = stdenv.lib.licenses.bsd3; } +) {}; + scanner = self.callPackage ( +{ mkDerivation, base, fetchgit, stdenv }: +mkDerivation { + pname = "scanner"; + version = "1.0.0"; + src = fetchgit { + url = http://cgit.cd.retiolum/scanner; + rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad"; + sha256 = "7d123c227777932039d26fc832b8d32a90f04c0bd6b7e8bcff0a6f49a54e0054"; + }; + libraryHaskellDepends = [ base ]; + license = stdenv.lib.licenses.wtfpl; +} ) {}; }; }; @@ -36,28 +66,28 @@ in hspkgs.callPackage ( { mkDerivation, aeson, attoparsec, base, base64-bytestring -, blaze-builder, bytestring, case-insensitive, containers, deepseq +, blaze-builder, blessings, bytestring, case-insensitive, containers, deepseq , directory, docopt, email-header, fetchgit, filepath , friendly-time, hyphenation, linebreak, old-locale, process -, random, rosezipper, safe, split, stdenv, terminal-size, text +, random, rosezipper, safe, scanner, split, stdenv, terminal-size, text , time, transformers, transformers-compat, unix, vector }: mkDerivation { pname = "much"; - version = "0.0.0.0"; + version = "1.0.0"; src = fetchgit { - url = "http://cgit.nomic/much"; - sha256 = "f0bcc34456cb876d3439694d1e16db414a540e13f476fa3ff1ad70d1d3caccb2"; - rev = "bfd854e05207a073eaa983c49f27c37555ccfce5"; + url = "http://cgit.cd.retiolum/much"; + rev = "045dc986b4de225a927175f81c8ccfdab450202c"; + sha256 = "cec175e3dc32ef93029ee5285f6c4042ce11d637945bc8cec02cb6699d06cc13"; }; isLibrary = false; isExecutable = true; buildDepends = [ - aeson attoparsec base base64-bytestring blaze-builder bytestring - case-insensitive containers deepseq directory docopt email-header - filepath friendly-time hyphenation linebreak old-locale process - random rosezipper safe split terminal-size text time transformers - transformers-compat unix vector + aeson attoparsec base base64-bytestring blaze-builder blessings bytestring + case-insensitive containers deepseq directory docopt email-header filepath + friendly-time hyphenation linebreak old-locale process random rosezipper + safe scanner split terminal-size text time transformers transformers-compat + unix vector ]; license = stdenv.lib.licenses.mit; } -- cgit v1.2.3 From 170dddabfbeb4122cca71a639b1e11d70bc6e628 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 03:20:06 +0200 Subject: tv git: add repos blessings, scanner --- tv/2configs/git.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tv/2configs/git.nix b/tv/2configs/git.nix index d782c87f1..8e4304037 100644 --- a/tv/2configs/git.nix +++ b/tv/2configs/git.nix @@ -20,6 +20,7 @@ let rules = concatMap make-rules (attrValues repos); public-repos = mapAttrs make-public-repo { + blessings = {}; cac = { desc = "CloudAtCost command line interface"; }; @@ -38,6 +39,7 @@ let push = {}; quipper = {}; regfish = {}; + scanner = {}; stockholm = { desc = "take all the computers hostage, they'll love you!"; }; -- cgit v1.2.3 From 15c6f0678fad4bb7541338e4f422e8a913d616f9 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 05:44:42 +0200 Subject: explicate stockholm configuration --- default.nix | 40 +++++++++++++++------------------------- krebs/5pkgs/default.nix | 4 ++-- 2 files changed, 17 insertions(+), 27 deletions(-) diff --git a/default.nix b/default.nix index f14329d40..0900ca7b2 100644 --- a/default.nix +++ b/default.nix @@ -6,26 +6,23 @@ let lib = import ; - krebs-modules-path = ./krebs/3modules; - krebs-pkgs-path = ./krebs/5pkgs; - user-modules-path = ./. + "/${current-user-name}/3modules"; - user-pkgs-path = ./. + "/${current-user-name}/5pkgs"; + nspath = ns: p: ./. + "/${ns}/${p}"; + kpath = nspath "krebs"; + upath = nspath current-user-name; - # XXX This is only used interactively, e.g. using get. - pkgs = - let - pkgs = import {}; - args = { - inherit pkgs; - lib = pkgs.lib; - }; - in - pkgs // - import krebs-pkgs-path args // - import user-pkgs-path args; + stockholm = { + imports = map (f: f "3modules") [ kpath upath ]; + + nixpkgs.config.packageOverrides = pkgs: + let + kpkgs = import (kpath "5pkgs") { inherit pkgs; }; + upkgs = import (upath "5pkgs") { pkgs = pkgs // kpkgs; }; + in + kpkgs // upkgs; + }; out = - { inherit pkgs; } // + { inherit (eval {}) pkgs; } // lib.mapAttrs (_: builtins.getAttr "main") (lib.filterAttrs (_: builtins.hasAttr "main") (lib.mapAttrs @@ -43,15 +40,8 @@ let eval = path: import { system = builtins.currentSystem; modules = [ + stockholm path - krebs-modules-path - user-modules-path - ] ++ [ - ({ config, lib, pkgs, ... }@args: { - _module.args.pkgs = - (import krebs-pkgs-path args) // - (import user-pkgs-path args); - }) ]; }; diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index a8a1b5853..77519e831 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -1,6 +1,6 @@ -{ lib, pkgs, ... }: +{ pkgs, ... }: -with import ../4lib { inherit lib; }; +with import ../4lib { inherit (pkgs) lib; }; let subdirs = mapAttrs (_: flip pkgs.callPackage {}) (subdirsOf ./.); -- cgit v1.2.3 From 421bf2ac0837e5652898ce7f7b983dc727fd5920 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 05:50:58 +0200 Subject: krebs pkgs: init haskell-overrides --- krebs/5pkgs/default.nix | 14 ++++++ krebs/5pkgs/haskell-overrides/blessings.nix | 14 ++++++ krebs/5pkgs/haskell-overrides/email-header.nix | 25 ++++++++++ krebs/5pkgs/haskell-overrides/scanner.nix | 12 +++++ krebs/5pkgs/much/default.nix | 66 +------------------------- 5 files changed, 66 insertions(+), 65 deletions(-) create mode 100644 krebs/5pkgs/haskell-overrides/blessings.nix create mode 100644 krebs/5pkgs/haskell-overrides/email-header.nix create mode 100644 krebs/5pkgs/haskell-overrides/scanner.nix diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 77519e831..e7fedce53 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -9,6 +9,20 @@ in subdirs // rec { + haskellPackages = pkgs.haskellPackages.override { + overrides = self: super: + mapAttrs (name: path: self.callPackage path {}) + (mapAttrs' + (name: type: + if hasSuffix ".nix" name + then { + name = removeSuffix ".nix" name; + value = ./haskell-overrides + "/${name}"; + } + else null) + (builtins.readDir ./haskell-overrides)); + }; + push = pkgs'.callPackage ./push { inherit (subdirs) get jq; }; diff --git a/krebs/5pkgs/haskell-overrides/blessings.nix b/krebs/5pkgs/haskell-overrides/blessings.nix new file mode 100644 index 000000000..311458211 --- /dev/null +++ b/krebs/5pkgs/haskell-overrides/blessings.nix @@ -0,0 +1,14 @@ +{ mkDerivation, base, fetchgit, stdenv }: +mkDerivation { + pname = "blessings"; + version = "1.0.0"; + src = fetchgit { + url = http://cgit.cd.retiolum/blessings; + rev = "25a510dcb38ea9158e9969d56eb66cb1b860ab5f"; + sha256 = "b962153e80e51519b52220199d8350b54154833e4bc25a792ecc58898fef3fb2"; + }; + libraryHaskellDepends = [ base ]; + doHaddock = false; + # WTFPL is the true license, which is unknown to cabal. + license = stdenv.lib.licenses.wtfpl; +} diff --git a/krebs/5pkgs/haskell-overrides/email-header.nix b/krebs/5pkgs/haskell-overrides/email-header.nix new file mode 100644 index 000000000..8c62f2f70 --- /dev/null +++ b/krebs/5pkgs/haskell-overrides/email-header.nix @@ -0,0 +1,25 @@ +{ mkDerivation, attoparsec, base, base64-bytestring, bytestring +, case-insensitive, containers, exceptions, fetchgit, QuickCheck +, stdenv, tasty, tasty-quickcheck, text, text-icu, time +}: +mkDerivation { + pname = "email-header"; + version = "0.3.0"; + src = fetchgit { + url = "https://github.com/4z3/email-header"; + sha256 = "f33fba567a39b1f2448869b269c26c40d8007599c23ab83bde5b4dfd9fd76ebc"; + rev = "7b179bd31192ead8afe7a0b6e34bcad4039deaa8"; + }; + buildDepends = [ + attoparsec base base64-bytestring bytestring case-insensitive + containers exceptions text text-icu time + ]; + testDepends = [ + base bytestring case-insensitive containers QuickCheck tasty + tasty-quickcheck text time + ]; + jailbreak = true; + homepage = "http://github.com/knrafto/email-header"; + description = "Parsing and rendering of email and MIME headers"; + license = stdenv.lib.licenses.bsd3; +} diff --git a/krebs/5pkgs/haskell-overrides/scanner.nix b/krebs/5pkgs/haskell-overrides/scanner.nix new file mode 100644 index 000000000..ebc5cd620 --- /dev/null +++ b/krebs/5pkgs/haskell-overrides/scanner.nix @@ -0,0 +1,12 @@ +{ mkDerivation, base, fetchgit, stdenv }: +mkDerivation { + pname = "scanner"; + version = "1.0.0"; + src = fetchgit { + url = http://cgit.cd.retiolum/scanner; + rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad"; + sha256 = "7d123c227777932039d26fc832b8d32a90f04c0bd6b7e8bcff0a6f49a54e0054"; + }; + libraryHaskellDepends = [ base ]; + license = stdenv.lib.licenses.wtfpl; +} diff --git a/krebs/5pkgs/much/default.nix b/krebs/5pkgs/much/default.nix index f28e0b5bc..ba5ab2327 100644 --- a/krebs/5pkgs/much/default.nix +++ b/krebs/5pkgs/much/default.nix @@ -1,70 +1,6 @@ { pkgs, ... }: -let - hspkgs = pkgs.haskellngPackages.override { - overrides = self: super: { - blessings = self.callPackage ( -{ mkDerivation, base, fetchgit, stdenv }: -mkDerivation { - pname = "blessings"; - version = "1.0.0"; - src = fetchgit { - url = http://cgit.cd.retiolum/blessings; - rev = "25a510dcb38ea9158e9969d56eb66cb1b860ab5f"; - sha256 = "b962153e80e51519b52220199d8350b54154833e4bc25a792ecc58898fef3fb2"; - }; - libraryHaskellDepends = [ base ]; - doHaddock = false; - # WTFPL is the true license, which is unknown to cabal. - license = stdenv.lib.licenses.wtfpl; -} -) {}; - email-header = self.callPackage ( -{ mkDerivation, attoparsec, base, base64-bytestring, bytestring -, case-insensitive, containers, exceptions, fetchgit, QuickCheck -, stdenv, tasty, tasty-quickcheck, text, text-icu, time -}: -mkDerivation { - pname = "email-header"; - version = "0.3.0"; - src = fetchgit { - url = "https://github.com/4z3/email-header"; - sha256 = "f33fba567a39b1f2448869b269c26c40d8007599c23ab83bde5b4dfd9fd76ebc"; - rev = "7b179bd31192ead8afe7a0b6e34bcad4039deaa8"; - }; - buildDepends = [ - attoparsec base base64-bytestring bytestring case-insensitive - containers exceptions text text-icu time - ]; - testDepends = [ - base bytestring case-insensitive containers QuickCheck tasty - tasty-quickcheck text time - ]; - jailbreak = true; - homepage = "http://github.com/knrafto/email-header"; - description = "Parsing and rendering of email and MIME headers"; - license = stdenv.lib.licenses.bsd3; -} -) {}; - scanner = self.callPackage ( -{ mkDerivation, base, fetchgit, stdenv }: -mkDerivation { - pname = "scanner"; - version = "1.0.0"; - src = fetchgit { - url = http://cgit.cd.retiolum/scanner; - rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad"; - sha256 = "7d123c227777932039d26fc832b8d32a90f04c0bd6b7e8bcff0a6f49a54e0054"; - }; - libraryHaskellDepends = [ base ]; - license = stdenv.lib.licenses.wtfpl; -} -) {}; - }; - }; -in - -hspkgs.callPackage ( +pkgs.haskellngPackages.callPackage ( { mkDerivation, aeson, attoparsec, base, base64-bytestring , blaze-builder, blessings, bytestring, case-insensitive, containers, deepseq , directory, docopt, email-header, fetchgit, filepath -- cgit v1.2.3 From ad218104244578d705e45cd299c6dc4b3e0458b2 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 06:16:56 +0200 Subject: default out: simplify namespace loader --- default.nix | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/default.nix b/default.nix index 0900ca7b2..b561cb7dd 100644 --- a/default.nix +++ b/default.nix @@ -23,29 +23,23 @@ let out = { inherit (eval {}) pkgs; } // - lib.mapAttrs (_: builtins.getAttr "main") - (lib.filterAttrs (_: builtins.hasAttr "main") - (lib.mapAttrs - (k: v: - if lib.hasPrefix "." k || v != "directory" then - {} - else if builtins.pathExists (./. + "/${k}/default.nix") then - { main = import (./. + "/${k}"); } - else if builtins.pathExists (./. + "/${k}/1systems") then - { main = mk-namespace (./. + "/${k}"); } - else - {}) - (builtins.readDir ./.))); + lib.mapAttrs + (name: _: + if builtins.pathExists (./. + "/${name}/default.nix") + then import (./. + "/${name}") + else import-1systems (./. + "/${name}/1systems")) + (lib.filterAttrs + (n: t: !lib.hasPrefix "." n && t == "directory") + (builtins.readDir ./.)); eval = path: import { - system = builtins.currentSystem; modules = [ stockholm path ]; }; - mk-namespace = path: mapNixDir mk-system (path + "/1systems"); + import-1systems = path: lib.mapAttrs (_: mk-system) (nixDir path); mk-system = path: rec { inherit (eval path) config options; @@ -53,8 +47,6 @@ let fetch = import ./krebs/0tools/fetch.nix { inherit config lib; }; }; - mapNixDir = f: path: lib.mapAttrs (_: f) (nixDir path); - nixDir = path: builtins.listToAttrs (catMaybes -- cgit v1.2.3 From fbab9828dac3df55db4b665d5b79983477ec2717 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 06:17:42 +0200 Subject: krebs pkgs default: drop redundant "lib." --- krebs/5pkgs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index e7fedce53..84fb8725b 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -44,7 +44,7 @@ subdirs // rec { execveBin = name: cfg: execve name (cfg // { destination = "/bin/${name}"; }); writeC = name: { destination ? "" }: src: pkgs.runCommand name {} '' - PATH=${lib.makeSearchPath "bin" (with pkgs; [ + PATH=${makeSearchPath "bin" (with pkgs; [ binutils coreutils gcc -- cgit v1.2.3 From 41dc859d7ed956addd01579a114549c1984206c5 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 06:30:20 +0200 Subject: allow nix-env -f --- default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/default.nix b/default.nix index b561cb7dd..7223a46e6 100644 --- a/default.nix +++ b/default.nix @@ -1,8 +1,10 @@ -{ current-date -, current-host-name -, current-user-name +{ current-date ? abort "current-date not defined" +, current-host-name ? abort "current-host-name not defined" +, current-user-name ? builtins.getEnv "LOGNAME" }: +assert current-user-name != ""; + let lib = import ; -- cgit v1.2.3 From d7367961c3789ab442ae63d2f8b49d8b5204622c Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 06:50:06 +0200 Subject: default out: export config and options --- default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/default.nix b/default.nix index 7223a46e6..c7365fd59 100644 --- a/default.nix +++ b/default.nix @@ -24,7 +24,7 @@ let }; out = - { inherit (eval {}) pkgs; } // + { inherit (eval {}) config options pkgs; } // lib.mapAttrs (name: _: if builtins.pathExists (./. + "/${name}/default.nix") -- cgit v1.2.3 From 4e4e1696462087925ba38b7ff2bf73cdad468009 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 06:56:45 +0200 Subject: krebs hspkgs megaparsec: init at 4.1.0 --- krebs/5pkgs/haskell-overrides/megaparsec.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 krebs/5pkgs/haskell-overrides/megaparsec.nix diff --git a/krebs/5pkgs/haskell-overrides/megaparsec.nix b/krebs/5pkgs/haskell-overrides/megaparsec.nix new file mode 100644 index 000000000..5ade6006e --- /dev/null +++ b/krebs/5pkgs/haskell-overrides/megaparsec.nix @@ -0,0 +1,20 @@ +{ mkDerivation, base, bytestring, fetchzip, HUnit, mtl, QuickCheck +, stdenv, test-framework, test-framework-hunit +, test-framework-quickcheck2, text, transformers +}: +mkDerivation { + pname = "megaparsec"; + version = "4.1.0"; + src = fetchzip { + url = "https://hackage.haskell.org/package/megaparsec-4.1.0/megaparsec-4.1.0.tar.gz"; + sha256 = "1a1ka53a3r91lwnlvzaa8nyk1dxvfd1ij1i5x5vp83q2r9z9dcmi"; + }; + libraryHaskellDepends = [ base bytestring mtl text transformers ]; + testHaskellDepends = [ + base HUnit mtl QuickCheck test-framework test-framework-hunit + test-framework-quickcheck2 transformers + ]; + homepage = "https://github.com/mrkkrp/megaparsec"; + description = "Monadic parser combinators"; + license = stdenv.lib.licenses.bsd3; +} -- cgit v1.2.3 From aa094e2b81910455e2385c78727da13f03074913 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 07:25:10 +0200 Subject: default out: use nspath in namespace loader --- default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/default.nix b/default.nix index c7365fd59..fd127084d 100644 --- a/default.nix +++ b/default.nix @@ -27,9 +27,9 @@ let { inherit (eval {}) config options pkgs; } // lib.mapAttrs (name: _: - if builtins.pathExists (./. + "/${name}/default.nix") - then import (./. + "/${name}") - else import-1systems (./. + "/${name}/1systems")) + if builtins.pathExists (nspath name "default.nix") + then import (nspath name "default.nix") + else import-1systems (nspath name "1systems")) (lib.filterAttrs (n: t: !lib.hasPrefix "." n && t == "directory") (builtins.readDir ./.)); -- cgit v1.2.3 From d7f0c3d171eec868a8c13bed2e076c65cbfbaabe Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 07:35:21 +0200 Subject: move maybe to krebs lib --- default.nix | 10 ++-------- krebs/4lib/maybe.nix | 10 ++++++++++ 2 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 krebs/4lib/maybe.nix diff --git a/default.nix b/default.nix index fd127084d..841882f54 100644 --- a/default.nix +++ b/default.nix @@ -7,6 +7,8 @@ assert current-user-name != ""; let lib = import ; + klib = import ./krebs/4lib { inherit lib; }; +in with klib; let nspath = ns: p: ./. + "/${ns}/${p}"; kpath = nspath "krebs"; @@ -67,12 +69,4 @@ let }.${v} or Nothing) (builtins.readDir path))); - # TODO move to lib - Just = x: { type = "maybe"; value = x; }; - Nothing = { type = "maybe"; }; - isMaybe = x: builtins.typeOf x == "set" && x.type or false == "maybe"; - isJust = x: isMaybe x && builtins.hasAttr "value" x; - fromJust = x: assert isJust x; x.value; - catMaybes = xs: map fromJust (builtins.filter isJust xs); - in out diff --git a/krebs/4lib/maybe.nix b/krebs/4lib/maybe.nix new file mode 100644 index 000000000..5189c99a1 --- /dev/null +++ b/krebs/4lib/maybe.nix @@ -0,0 +1,10 @@ +{ ... }: + +rec { + Just = x: { type = "maybe"; value = x; }; + Nothing = { type = "maybe"; }; + isMaybe = x: builtins.typeOf x == "set" && x.type or false == "maybe"; + isJust = x: isMaybe x && builtins.hasAttr "value" x; + fromJust = x: assert isJust x; x.value; + catMaybes = xs: map fromJust (builtins.filter isJust xs); +} -- cgit v1.2.3 From 4d32e1575705e544c8cbb5834447d71c1b577970 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 17 Oct 2015 08:00:35 +0200 Subject: tv git: add section "Haskell libraries" --- tv/2configs/git.nix | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/tv/2configs/git.nix b/tv/2configs/git.nix index 8e4304037..2520da173 100644 --- a/tv/2configs/git.nix +++ b/tv/2configs/git.nix @@ -19,8 +19,7 @@ let rules = concatMap make-rules (attrValues repos); - public-repos = mapAttrs make-public-repo { - blessings = {}; + public-repos = mapAttrs make-public-repo ({ cac = { desc = "CloudAtCost command line interface"; }; @@ -31,22 +30,24 @@ let hack = {}; load-env = {}; make-snapshot = {}; - mime = {}; much = {}; nixos-infest = {}; nixpkgs = {}; painload = {}; push = {}; - quipper = {}; regfish = {}; - scanner = {}; stockholm = { desc = "take all the computers hostage, they'll love you!"; }; + } // mapAttrs (_: repo: repo // { section = "Haskell libraries"; }) { + blessings = {}; + mime = {}; + quipper = {}; + scanner = {}; wai-middleware-time = {}; web-routes-wai-custom = {}; xintmap = {}; - }; + }); restricted-repos = mapAttrs make-restricted-repo ( { @@ -58,8 +59,8 @@ let import { inherit config lib pkgs; } ); - make-public-repo = name: { desc ? null, ... }: { - inherit name desc; + make-public-repo = name: { desc ? null, section ? null, ... }: { + inherit name desc section; public = true; hooks = { post-receive = git.irc-announce { -- cgit v1.2.3 [cgit] Unable to lock slot /tmp/cgit/21000000.lock: No such file or directory (2)