Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ pkgs, lib, nodejs, stdenv}: 2 3let 4 inherit (lib) composeManyExtensions extends makeExtensible mapAttrs; 5 6 nodePackages = final: import ./composition.nix { 7 inherit pkgs nodejs; 8 inherit (stdenv.hostPlatform) system; 9 }; 10 11 mainProgramOverrides = final: prev: 12 mapAttrs (pkgName: mainProgram: 13 prev.${pkgName}.override (oldAttrs: { 14 meta = oldAttrs.meta // { inherit mainProgram; }; 15 }) 16 ) (import ./main-programs.nix); 17 18 extensions = composeManyExtensions [ 19 mainProgramOverrides 20 (import ./overrides.nix { inherit pkgs nodejs; }) 21 ]; 22in 23 makeExtensible (extends extensions nodePackages)