Skip to content

Commit 1d1ebf5

Browse files
committed
pkgs/top-level/config.nix: add various packageOverrides
Hm, Haskell's one is actually an overlay.
1 parent fbf0f8d commit 1d1ebf5

3 files changed

Lines changed: 30 additions & 6 deletions

File tree

pkgs/top-level/all-packages.nix

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13384,12 +13384,12 @@ in
1338413384
# the latest Maint version
1338513385
perl528Packages = recurseIntoAttrs (callPackage ./perl-packages.nix {
1338613386
perl = perl528;
13387-
overrides = (config.perlPackageOverrides or (p: {})) pkgs;
13387+
overrides = config.perlPackageOverrides pkgs;
1338813388
});
1338913389
# the latest Devel version
1339013390
perldevelPackages = recurseIntoAttrs (callPackage ./perl-packages.nix {
1339113391
perl = perldevel;
13392-
overrides = (config.perlPackageOverrides or (p: {})) pkgs;
13392+
overrides = config.perlPackageOverrides pkgs;
1339313393
});
1339413394

1339513395
perlPackages = perl528Packages;
@@ -13437,7 +13437,7 @@ in
1343713437
};
1343813438

1343913439
rPackages = dontRecurseIntoAttrs (callPackage ../development/r-modules {
13440-
overrides = (config.rPackageOverrides or (p: {})) pkgs;
13440+
overrides = config.rPackageOverrides pkgs;
1344113441
});
1344213442

1344313443
### SERVERS

pkgs/top-level/config.nix

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,11 @@ let
2626
'';
2727
});
2828

29+
mkOverrides = args: mkMassRebuild ({
30+
type = types.functionTo (types.attrsOf (types.uniq types.unspecified));
31+
default = super: {};
32+
} // args);
33+
2934
options = {
3035

3136
/* Internal stuff */
@@ -106,7 +111,27 @@ let
106111
description = "A list of blacklisted licenses.";
107112
};
108113

109-
# TODO: packageOverrides, needs functionTo removed in 4ff1ab5a56f1280d2de319ad4eb4b2796e07ed35
114+
/* Overlays */
115+
116+
# It feels to me like if overlays really belong here.
117+
118+
packageOverrides = mkOverrides {
119+
description = "Poor man's global overlay.";
120+
};
121+
122+
haskellPackageOverrides = mkMassRebuild {
123+
type = types.uniq types.unspecified;
124+
default = self: super: {};
125+
description = "Haskell's overlay.";
126+
};
127+
128+
perlPackageOverrides = mkOverrides {
129+
description = "Poor man's perl overlay.";
130+
};
131+
132+
rPackageOverrides = mkOverrides {
133+
description = "Poor man's R overlay.";
134+
};
110135

111136
# See discussion at https://github.com/NixOS/nixpkgs/pull/25304#issuecomment-298385426
112137
# for why this defaults to false, but I (@copumpkin) want to default it to true soon.

pkgs/top-level/stage.nix

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,7 @@ let
111111
# attributes to refer to the original attributes (e.g. "foo =
112112
# ... pkgs.foo ...").
113113
configOverrides = self: super:
114-
lib.optionalAttrs allowCustomOverrides
115-
((config.packageOverrides or (super: {})) super);
114+
lib.optionalAttrs allowCustomOverrides (config.packageOverrides super);
116115

117116
# Convenience attributes for instantitating package sets. Each of
118117
# these will instantiate a new version of allPackages. Currently the

0 commit comments

Comments
 (0)