summary refs log tree commit diff
path: root/pkgs/development/node-packages/default.nix
blob: 0fcd508012e8a7ad9b74b81a5be2bdad98208b3d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{ 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);

  extensions = composeManyExtensions [
    mainProgramOverrides
    (import ./overrides.nix { inherit pkgs nodejs; })
  ];
in
  makeExtensible (extends extensions nodePackages)