1{
2 lib,
3 splicePackages,
4 nixDependencies,
5 pkgs,
6 maintainers,
7 teams,
8 otherSplices,
9 version,
10 src,
11}:
12let
13 officialRelease = true;
14
15 # A new scope, so that we can use `callPackage` to inject our own interdependencies
16 # without "polluting" the top level "`pkgs`" attrset.
17 # This also has the benefit of providing us with a distinct set of packages
18 # we can iterate over.
19 nixComponents =
20 lib.makeScopeWithSplicing'
21 {
22 inherit splicePackages;
23 inherit (nixDependencies) newScope;
24 }
25 {
26 inherit otherSplices;
27 f = import ./packaging/components.nix {
28 inherit
29 lib
30 maintainers
31 teams
32 officialRelease
33 pkgs
34 src
35 version
36 ;
37 };
38 };
39
40in
41nixComponents.overrideSource src