Avoid top-level with ...; in pkgs/development/lua-modules/aliases.nix

This commit is contained in:
Philip Taron 2024-03-15 11:20:20 -07:00 committed by Matthieu Coudron
parent 7dd0f8e6d4
commit ee457b8b08

View File

@ -7,31 +7,31 @@ lib: self: super:
### Use `./remove-attr.py [attrname]` in this directory to remove your alias
### from the `luaPackages` set without regenerating the entire file.
with self;
let
inherit (lib) dontDistribute hasAttr isDerivation mapAttrs;
# Removing recurseForDerivation prevents derivations of aliased attribute
# set to appear while listing all the packages available.
removeRecurseForDerivations = alias: with lib;
removeRecurseForDerivations = alias:
if alias.recurseForDerivations or false
then removeAttrs alias ["recurseForDerivations"]
else alias;
# Disabling distribution prevents top-level aliases for non-recursed package
# sets from building on Hydra.
removeDistribute = alias: with lib;
removeDistribute = alias:
if isDerivation alias then
dontDistribute alias
else alias;
# Make sure that we are not shadowing something from node-packages.nix.
checkInPkgs = n: alias:
if builtins.hasAttr n super
if hasAttr n super
then throw "Alias ${n} is still in generated.nix"
else alias;
mapAliases = aliases:
lib.mapAttrs (n: alias:
mapAttrs (n: alias:
removeDistribute
(removeRecurseForDerivations
(checkInPkgs n alias)))