doc: add code comment clarifying the meaning of legacyPackages

This commit is contained in:
Luc Perkins 2022-10-26 15:03:19 -03:00 committed by Cole Helbling
parent 1cecfb5488
commit 0c738e2e18

View File

@ -45,6 +45,15 @@
}).nixos.manual.x86_64-linux;
};
# The "legacy" in `legacyPackages` doesn't imply that the packages exposed
# through this attribute are "legacy" packages. Instead, `legacyPackages`
# is used here as a substitute attribute name for `packages`. The problem
# with `packages` is that it makes operations like `nix flake show
# nixpkgs` unusably slow due to the sheer number of packages the Nix CLI
# needs to iterate through. But when the Nix CLI sees a `legacyPackages`
# attribute it displays `omitted` instead of iterating through all
# packages, which keeps `nix flake show` on Nixpkgs reasonably fast,
# though less information rich.
legacyPackages = forAllSystems (system: import ./. { inherit system; });
nixosModules = {