krebs/5pkgs: detect simple obsolete overrides

This commit is contained in:
tv 2017-05-24 02:03:46 +02:00
parent eae210f8ff
commit e6b7fe74c1
2 changed files with 26 additions and 23 deletions

View File

@ -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 {};
};
}

View File

@ -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 ./.))))