diff options
author | John Ericson <git@JohnEricson.me> | 2018-10-11 13:54:22 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-11 13:54:22 -0400 |
commit | 1da78d0df15882fdc1148c2ba050830a1237500d (patch) | |
tree | 39502b760a9c87af6823ad63f5ff0bb89d6d4d3d /pkgs/top-level | |
parent | 764dbef8b1c2b8aa47d98e817b50648116c3c9c5 (diff) | |
parent | dc214ed99b1de1441a052752616ea1a9f1e1bf64 (diff) | |
download | nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar.gz nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar.bz2 nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar.lz nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar.xz nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.tar.zst nixlib-1da78d0df15882fdc1148c2ba050830a1237500d.zip |
Merge pull request #48219 from obsidiansystems/versatile-__splicedPackages
__splicedPackages: Don't include xorg
Diffstat (limited to 'pkgs/top-level')
-rw-r--r-- | pkgs/top-level/splice.nix | 32 |
1 files changed, 14 insertions, 18 deletions
diff --git a/pkgs/top-level/splice.nix b/pkgs/top-level/splice.nix index 41fdc22d1477..82a781083e2c 100644 --- a/pkgs/top-level/splice.nix +++ b/pkgs/top-level/splice.nix @@ -24,15 +24,6 @@ lib: pkgs: actuallySplice: let - defaultBuildBuildScope = pkgs.buildPackages.buildPackages // pkgs.buildPackages.buildPackages.xorg; - defaultBuildHostScope = pkgs.buildPackages // pkgs.buildPackages.xorg; - defaultBuildTargetScope = - if pkgs.stdenv.targetPlatform == pkgs.stdenv.hostPlatform - then defaultBuildHostScope - else assert pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform; defaultHostTargetScope; - defaultHostHostScope = {}; # unimplemented - defaultHostTargetScope = pkgs // pkgs.xorg; - defaultTargetTargetScope = pkgs.targetPackages // pkgs.targetPackages.xorg or {}; spliceReal = { pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget , pkgsHostHost, pkgsHostTarget @@ -105,19 +96,24 @@ let } @ args: if actuallySplice then spliceReal args else pkgsHostTarget; - splicedPackages = splicePackages { - pkgsBuildBuild = defaultBuildBuildScope; - pkgsBuildHost = defaultBuildHostScope; - pkgsBuildTarget = defaultBuildTargetScope; - pkgsHostHost = defaultHostHostScope; - pkgsHostTarget = defaultHostTargetScope; - pkgsTargetTarget = defaultTargetTargetScope; + splicedPackages = splicePackages rec { + pkgsBuildBuild = pkgs.buildPackages.buildPackages; + pkgsBuildHost = pkgs.buildPackages; + pkgsBuildTarget = + if pkgs.stdenv.targetPlatform == pkgs.stdenv.hostPlatform + then pkgsBuildHost + else assert pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform; pkgsHostTarget; + pkgsHostHost = {}; # unimplemented + pkgsHostTarget = pkgs; + pkgsTargetTarget = pkgs.targetPackages; } // { # These should never be spliced under any circumstances inherit (pkgs) pkgs buildPackages targetPackages; inherit (pkgs.stdenv) buildPlatform targetPlatform hostPlatform; }; + splicedPackagesWithXorg = splicedPackages // splicedPackages.xorg; + in { @@ -128,9 +124,9 @@ in # `newScope' for sets of packages in `pkgs' (see e.g. `gnome' below). callPackage = pkgs.newScope {}; - callPackages = lib.callPackagesWith splicedPackages; + callPackages = lib.callPackagesWith splicedPackagesWithXorg; - newScope = extra: lib.callPackageWith (splicedPackages // extra); + newScope = extra: lib.callPackageWith (splicedPackagesWithXorg // extra); # Haskell package sets need this because they reimplement their own # `newScope`. |