summary refs log tree commit diff
path: root/pkgs/top-level/splice.nix
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2019-03-13 13:34:38 -0400
committerJohn Ericson <git@JohnEricson.me>2019-03-24 22:12:15 -0400
commit70d71bbbe46eecfefc920bb1a919960d5feb9fc4 (patch)
tree5b65648837c13163f04829c492c1d3f08b898c35 /pkgs/top-level/splice.nix
parentceb27efde0532bb663e3d8c4fe20f82ee4dc22e3 (diff)
downloadnixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar.gz
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar.bz2
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar.lz
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar.xz
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.tar.zst
nixpkgs-70d71bbbe46eecfefc920bb1a919960d5feb9fc4.zip
top-level: Create `pkgs{Build,Host,Target}{Build,Host,Target}`
This is needed to avoid confusing and repeated boilerplate for
`fooForTarget`.  The vast majority of use-cases can still use
`buildPackages or `targetPackages`, which are now defined in terms of
these.
Diffstat (limited to 'pkgs/top-level/splice.nix')
-rw-r--r--pkgs/top-level/splice.nix23
1 files changed, 12 insertions, 11 deletions
diff --git a/pkgs/top-level/splice.nix b/pkgs/top-level/splice.nix
index ec6ed357c68..a093442d369 100644
--- a/pkgs/top-level/splice.nix
+++ b/pkgs/top-level/splice.nix
@@ -96,19 +96,20 @@ let
                    } @ args:
     if actuallySplice then spliceReal args else pkgsHostTarget;
 
-  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;
+  splicedPackages = splicePackages {
+    inherit (pkgs)
+      pkgsBuildBuild pkgsBuildHost pkgsBuildTarget
+      pkgsHostHost pkgsHostTarget
+      pkgsTargetTarget
+      ;
   } // {
     # These should never be spliced under any circumstances
-    inherit (pkgs) pkgs buildPackages targetPackages;
+    inherit (pkgs)
+      pkgsBuildBuild pkgsBuildHost pkgsBuildTarget
+      pkgsHostHost pkgsHostTarget
+      pkgsTargetTarget
+      buildPackages pkgs targetPackages
+      ;
     inherit (pkgs.stdenv) buildPlatform targetPlatform hostPlatform;
   };