1lib: self: super:
2
3### Deprecated aliases - for backward compatibility
4###
5### !!! NOTE !!!
6### Use `./remove-attr.py [attrname]` in this directory to remove your alias
7### from the `luaPackages` set without regenerating the entire file.
8
9let
10 inherit (lib)
11 dontDistribute
12 hasAttr
13 isDerivation
14 mapAttrs
15 ;
16
17 # Removing recurseForDerivation prevents derivations of aliased attribute
18 # set to appear while listing all the packages available.
19 removeRecurseForDerivations =
20 alias:
21 if alias.recurseForDerivations or false then
22 removeAttrs alias [ "recurseForDerivations" ]
23 else
24 alias;
25
26 # Disabling distribution prevents top-level aliases for non-recursed package
27 # sets from building on Hydra.
28 removeDistribute = alias: if isDerivation alias then dontDistribute alias else alias;
29
30 # Make sure that we are not shadowing something from node-packages.nix.
31 checkInPkgs =
32 n: alias: if hasAttr n super then throw "Alias ${n} is still in generated.nix" else alias;
33
34 mapAliases =
35 aliases:
36 mapAttrs (n: alias: removeDistribute (removeRecurseForDerivations (checkInPkgs n alias))) aliases;
37in
38
39mapAliases {
40 lpty = throw "lpy was removed because broken and unmaintained "; # added 2023-10-14
41 cyrussasl = throw "cyrussasl was removed because broken and unmaintained "; # added 2023-10-18
42 nlua-nvim = throw "nlua-nvim was removed, use neodev-nvim instead"; # added 2023-12-16
43 nvim-client = throw "nvim-client was removed because it is now part of neovim"; # added 2023-12-17
44 toml = throw "toml was removed because broken. You can use toml-edit instead"; # added 2024-06-25
45 nvim-dbee = throw "nvim-dbee was removed because broken. You can use vimPlugins.nvim-dbee instead"; # added 2024-06-25
46}