From eae210f8ff05b7f59ab62ba161c86971dbd7f50e Mon Sep 17 00:00:00 2001
From: tv <tv@krebsco.de>
Date: Wed, 24 May 2017 01:57:28 +0200
Subject: [PATCH] krebs/5pkgs: move haskell stuff to a subdir

---
 krebs/5pkgs/default.nix                           | 15 +--------------
 .../{haskell-overrides => haskell}/blessings.nix  |  0
 krebs/5pkgs/haskell/default.nix                   | 15 +++++++++++++++
 .../email-header.nix                              |  0
 .../hyphenation.nix                               |  0
 .../5pkgs/{haskell-overrides => haskell}/kirk.nix |  0
 .../5pkgs/{haskell-overrides => haskell}/news.nix |  0
 .../{haskell-overrides => haskell}/scanner.nix    |  0
 .../xmonad-stockholm.nix                          |  0
 9 files changed, 16 insertions(+), 14 deletions(-)
 rename krebs/5pkgs/{haskell-overrides => haskell}/blessings.nix (100%)
 create mode 100644 krebs/5pkgs/haskell/default.nix
 rename krebs/5pkgs/{haskell-overrides => haskell}/email-header.nix (100%)
 rename krebs/5pkgs/{haskell-overrides => haskell}/hyphenation.nix (100%)
 rename krebs/5pkgs/{haskell-overrides => haskell}/kirk.nix (100%)
 rename krebs/5pkgs/{haskell-overrides => haskell}/news.nix (100%)
 rename krebs/5pkgs/{haskell-overrides => haskell}/scanner.nix (100%)
 rename krebs/5pkgs/{haskell-overrides => haskell}/xmonad-stockholm.nix (100%)

diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix
index 9fe2fea3c..eab059165 100644
--- a/krebs/5pkgs/default.nix
+++ b/krebs/5pkgs/default.nix
@@ -12,23 +12,10 @@ with import <stockholm/lib>;
       then trace "Upstream `${upstream.name}' gets overridden by `${override.name}'." override
       else override;
   in {}
+  // import ./haskell pkgs oldpkgs
   // import ./simple pkgs oldpkgs
   // import ./writers.nix pkgs oldpkgs
   // {
-    haskellPackages = oldpkgs.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));
-    };
-
     ReaktorPlugins = callPackage ./simple/Reaktor/plugins.nix {};
 
     buildbot-full = callPackage ./simple/buildbot {
diff --git a/krebs/5pkgs/haskell-overrides/blessings.nix b/krebs/5pkgs/haskell/blessings.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/blessings.nix
rename to krebs/5pkgs/haskell/blessings.nix
diff --git a/krebs/5pkgs/haskell/default.nix b/krebs/5pkgs/haskell/default.nix
new file mode 100644
index 000000000..1120356a7
--- /dev/null
+++ b/krebs/5pkgs/haskell/default.nix
@@ -0,0 +1,15 @@
+with import <stockholm/lib>;
+
+self: super:
+{
+  haskellPackages = super.haskellPackages.override {
+    overrides = self: super:
+      listToAttrs
+        (map
+          (name: nameValuePair (removeSuffix ".nix" name)
+                               (self.callPackage (./. + "/${name}") {}))
+          (filter
+            (name: name != "default.nix" && !hasPrefix "." name)
+            (attrNames (readDir ./.))));
+  };
+}
diff --git a/krebs/5pkgs/haskell-overrides/email-header.nix b/krebs/5pkgs/haskell/email-header.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/email-header.nix
rename to krebs/5pkgs/haskell/email-header.nix
diff --git a/krebs/5pkgs/haskell-overrides/hyphenation.nix b/krebs/5pkgs/haskell/hyphenation.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/hyphenation.nix
rename to krebs/5pkgs/haskell/hyphenation.nix
diff --git a/krebs/5pkgs/haskell-overrides/kirk.nix b/krebs/5pkgs/haskell/kirk.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/kirk.nix
rename to krebs/5pkgs/haskell/kirk.nix
diff --git a/krebs/5pkgs/haskell-overrides/news.nix b/krebs/5pkgs/haskell/news.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/news.nix
rename to krebs/5pkgs/haskell/news.nix
diff --git a/krebs/5pkgs/haskell-overrides/scanner.nix b/krebs/5pkgs/haskell/scanner.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/scanner.nix
rename to krebs/5pkgs/haskell/scanner.nix
diff --git a/krebs/5pkgs/haskell-overrides/xmonad-stockholm.nix b/krebs/5pkgs/haskell/xmonad-stockholm.nix
similarity index 100%
rename from krebs/5pkgs/haskell-overrides/xmonad-stockholm.nix
rename to krebs/5pkgs/haskell/xmonad-stockholm.nix