2021-12-19 01:06:50 +00:00
|
|
|
lib: prev:
|
|
|
|
|
|
|
|
let
|
|
|
|
# Removing recurseForDerivation prevents derivations of aliased attribute
|
|
|
|
# set to appear while listing all the packages available.
|
2024-09-19 14:19:46 +00:00
|
|
|
removeRecurseForDerivations = alias:
|
2021-12-19 01:06:50 +00:00
|
|
|
if alias.recurseForDerivations or false then
|
2024-09-19 14:19:46 +00:00
|
|
|
lib.removeAttrs alias ["recurseForDerivations"]
|
2021-12-19 01:06:50 +00:00
|
|
|
else alias;
|
|
|
|
|
|
|
|
# Disabling distribution prevents top-level aliases for non-recursed package
|
|
|
|
# sets from building on Hydra.
|
2024-09-19 14:19:46 +00:00
|
|
|
removeDistribute = alias:
|
|
|
|
if lib.isDerivation alias then
|
|
|
|
lib.dontDistribute alias
|
2021-12-19 01:06:50 +00:00
|
|
|
else alias;
|
|
|
|
|
|
|
|
# Make sure that we are not shadowing something from
|
|
|
|
# writers.
|
|
|
|
checkInPkgs = n: alias: if builtins.hasAttr n prev
|
|
|
|
then throw "Alias ${n} is still in writers"
|
|
|
|
else alias;
|
|
|
|
|
|
|
|
mapAliases = aliases:
|
|
|
|
lib.mapAttrs (n: alias: removeDistribute
|
|
|
|
(removeRecurseForDerivations
|
|
|
|
(checkInPkgs n alias)))
|
|
|
|
aliases;
|
|
|
|
|
|
|
|
in
|
|
|
|
mapAliases ({
|
|
|
|
/* Cleanup before 22.05, Added 2021-12-11 */
|
|
|
|
writePython2 = "Python 2 is EOL and the use of writers.writePython2 is deprecated.";
|
|
|
|
writePython2Bin = "Python 2 is EOL and the use of writers.writePython2Bin is deprecated.";
|
|
|
|
})
|