tv pkgs: callPackage all subdirs

This commit is contained in:
tv 2016-10-22 14:54:19 +02:00
parent 147df0c904
commit 30fe90d4c7
2 changed files with 19 additions and 5 deletions

View File

@ -1,7 +1,24 @@
{ config, pkgs, ... }:
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 import <stockholm/lib>;
--disk-cache-size=50000000 \
"$@"
'';
ejabberd = pkgs.callPackage ./ejabberd {
ejabberd = callPackage ./ejabberd {
erlang = pkgs.erlangR16;
};
ff = pkgs.writeDashBin "ff" ''
@ -22,8 +39,5 @@ with import <stockholm/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; };
};
}