depot/third_party/nixpkgs/pkgs/development/node-packages/default.nix

44 lines
836 B
Nix

{
config,
pkgs,
lib,
nodejs,
stdenv,
}:
let
inherit (lib)
composeManyExtensions
extends
makeExtensible
mapAttrs
;
nodePackages =
final:
import ./composition.nix {
inherit pkgs nodejs;
inherit (stdenv.hostPlatform) system;
};
mainProgramOverrides =
final: prev:
mapAttrs (
pkgName: mainProgram:
prev.${pkgName}.override (oldAttrs: {
meta = oldAttrs.meta // {
inherit mainProgram;
};
})
) (import ./main-programs.nix);
aliases =
final: prev: lib.optionalAttrs config.allowAliases (import ./aliases.nix pkgs lib final prev);
extensions = composeManyExtensions [
aliases
mainProgramOverrides
(import ./overrides.nix { inherit pkgs nodejs; })
];
in
makeExtensible (extends extensions nodePackages)