From e6b7fe74c1ec4ff42967e7bd79d7fe669451d047 Mon Sep 17 00:00:00 2001
From: tv <tv@krebsco.de>
Date: Wed, 24 May 2017 02:03:46 +0200
Subject: [PATCH] krebs/5pkgs: detect simple obsolete overrides

---
 krebs/5pkgs/default.nix        | 21 +++++----------------
 krebs/5pkgs/simple/default.nix | 28 +++++++++++++++++++++-------
 2 files changed, 26 insertions(+), 23 deletions(-)

diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix
index eab059165..ea14e02a4 100644
--- a/krebs/5pkgs/default.nix
+++ b/krebs/5pkgs/default.nix
@@ -1,27 +1,16 @@
 pkgs: oldpkgs:
 with import <stockholm/lib>;
-  let
-    # This callPackage will try to detect obsolete overrides.
-    callPackage = path: args: let
-      override = pkgs.callPackage path args;
-      upstream = optionalAttrs (override ? "name")
-        (oldpkgs.${(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 {}
+  {}
   // import ./haskell pkgs oldpkgs
   // import ./simple pkgs oldpkgs
   // import ./writers.nix pkgs oldpkgs
   // {
-    ReaktorPlugins = callPackage ./simple/Reaktor/plugins.nix {};
+    ReaktorPlugins = pkgs.callPackage ./simple/Reaktor/plugins.nix {};
 
-    buildbot-full = callPackage ./simple/buildbot {
+    buildbot-full = pkgs.callPackage ./simple/buildbot {
       plugins = with pkgs.buildbot-plugins; [ www console-view waterfall-view ];
     };
-    buildbot-worker = callPackage ./simple/buildbot/worker.nix {};
+    buildbot-worker = pkgs.callPackage ./simple/buildbot/worker.nix {};
 
     # https://github.com/proot-me/PRoot/issues/106
     proot = pkgs.writeDashBin "proot" ''
@@ -35,6 +24,6 @@ with import <stockholm/lib>;
     in if typeOf x != "lambda" then x else oldpkgs.symlinkJoin name paths;
 
     test = {
-      infest-cac-centos7 = callPackage ./test/infest-cac-centos7 {};
+      infest-cac-centos7 = pkgs.callPackage ./test/infest-cac-centos7 {};
     };
   }
diff --git a/krebs/5pkgs/simple/default.nix b/krebs/5pkgs/simple/default.nix
index 2f6799759..1b9d8c235 100644
--- a/krebs/5pkgs/simple/default.nix
+++ b/krebs/5pkgs/simple/default.nix
@@ -1,10 +1,24 @@
 with import <stockholm/lib>;
 
 self: super:
-listToAttrs
-  (map
-    (name: nameValuePair (removeSuffix ".nix" name)
-                         (super.callPackage (./. + "/${name}") {}))
-    (filter
-      (name: name != "default.nix" && !hasPrefix "." name)
-      (attrNames (readDir ./.))))
+
+let
+  # This callPackage will try to detect obsolete overrides.
+  callPackage = path: args: let
+    override = self.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
+
+  listToAttrs
+    (map
+      (name: nameValuePair (removeSuffix ".nix" name)
+                           (callPackage (./. + "/${name}") {}))
+      (filter
+        (name: name != "default.nix" && !hasPrefix "." name)
+        (attrNames (readDir ./.))))