1 { config, pkgs, lib, nodejs, stdenv }:
4 inherit (lib) composeManyExtensions extends makeExtensible mapAttrs;
6 nodePackages = final: import ./composition.nix {
8 inherit (stdenv.hostPlatform) system;
11 mainProgramOverrides = final: prev:
12 mapAttrs (pkgName: mainProgram:
13 prev.${pkgName}.override (oldAttrs: {
14 meta = oldAttrs.meta // { inherit mainProgram; };
16 ) (import ./main-programs.nix);
18 aliases = final: prev:
19 lib.optionalAttrs config.allowAliases
20 (import ./aliases.nix pkgs lib final prev);
22 extensions = composeManyExtensions [
25 (import ./overrides.nix { inherit pkgs nodejs; })
28 makeExtensible (extends extensions nodePackages)