From 0bf10957e2679a6379f5e02e921a8f58ce18deac Mon Sep 17 00:00:00 2001 From: John Ericson Date: Thu, 20 Jun 2024 14:13:31 -0400 Subject: [PATCH 1/3] netbsd: Sort top package set file --- pkgs/os-specific/bsd/netbsd/default.nix | 144 ++++++++++++------------ 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index 1a00128dcb5b..f314ba5806f7 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -47,20 +47,6 @@ makeScopeWithSplicing' { # if we don't perform these manual calls, we get infinite recursion issues # because of the splices. - mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { - inherit (buildPackages.netbsd) - netbsdSetupHook - makeMinimal - install - tsort - lorder - ; - inherit (buildPackages) mandoc; - inherit (buildPackages.buildPackages) rsync; - }; - - makeMinimal = self.callPackage ./pkgs/makeMinimal.nix { inherit (self) make; }; - compat = self.callPackage ./pkgs/compat/package.nix { inherit (buildPackages) coreutils; inherit (buildPackages.darwin) cctools-port; @@ -68,69 +54,11 @@ makeScopeWithSplicing' { inherit (self) install; }; - install = self.callPackage ./pkgs/install/package.nix { - inherit (self) - fts - mtree - make - compatIfNeeded - ; - inherit (buildPackages.netbsd) makeMinimal; - }; - - # See note in pkgs/stat/package.nix - stat = self.callPackage ./pkgs/stat/package.nix { - inherit (buildPackages.netbsd) makeMinimal install; - }; - - # See note in pkgs/stat/hook.nix - statHook = self.callPackage ./pkgs/stat/hook.nix { inherit (self) stat; }; - - tsort = self.callPackage ./pkgs/tsort.nix { inherit (buildPackages.netbsd) makeMinimal install; }; - - lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildPackages.netbsd) makeMinimal install; }; - config = self.callPackage ./pkgs/config.nix { inherit (buildPackages.netbsd) makeMinimal install; inherit (self) cksum; }; - include = self.callPackage ./pkgs/include.nix { - inherit (buildPackages.netbsd) - makeMinimal - install - nbperf - rpcgen - ; - inherit (buildPackages) stdenv; - }; - - sys-headers = self.callPackage ./pkgs/sys/headers.nix { - inherit (buildPackages.netbsd) - makeMinimal - install - tsort - lorder - statHook - uudecode - config - genassym - ; - }; - - libutil = self.callPackage ./pkgs/libutil.nix { - inherit (buildPackages.netbsd) - netbsdSetupHook - makeMinimal - install - lorder - tsort - statHook - ; - }; - - libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { }; - csu = self.callPackage ./pkgs/csu.nix { inherit (self) headers sys-headers ld_elf_so; inherit (buildPackages.netbsd) @@ -145,6 +73,26 @@ makeScopeWithSplicing' { ; }; + include = self.callPackage ./pkgs/include.nix { + inherit (buildPackages.netbsd) + makeMinimal + install + nbperf + rpcgen + ; + inherit (buildPackages) stdenv; + }; + + install = self.callPackage ./pkgs/install/package.nix { + inherit (self) + fts + mtree + make + compatIfNeeded + ; + inherit (buildPackages.netbsd) makeMinimal; + }; + libcMinimal = self.callPackage ./pkgs/libcMinimal.nix { inherit (self) headers csu; inherit (buildPackages.netbsd) @@ -160,6 +108,8 @@ makeScopeWithSplicing' { ; }; + libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { }; + librpcsvc = self.callPackage ./pkgs/librpcsvc.nix { inherit (buildPackages.netbsd) netbsdSetupHook @@ -172,7 +122,57 @@ makeScopeWithSplicing' { ; }; + libutil = self.callPackage ./pkgs/libutil.nix { + inherit (buildPackages.netbsd) + netbsdSetupHook + makeMinimal + install + lorder + tsort + statHook + ; + }; + + lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildPackages.netbsd) makeMinimal install; }; + mtree = self.callPackage ./pkgs/mtree.nix { inherit (self) mknod; }; + + mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { + inherit (buildPackages.netbsd) + netbsdSetupHook + makeMinimal + install + tsort + lorder + ; + inherit (buildPackages) mandoc; + inherit (buildPackages.buildPackages) rsync; + }; + + makeMinimal = self.callPackage ./pkgs/makeMinimal.nix { inherit (self) make; }; + + # See note in pkgs/stat/package.nix + stat = self.callPackage ./pkgs/stat/package.nix { + inherit (buildPackages.netbsd) makeMinimal install; + }; + + # See note in pkgs/stat/hook.nix + statHook = self.callPackage ./pkgs/stat/hook.nix { inherit (self) stat; }; + + sys-headers = self.callPackage ./pkgs/sys/headers.nix { + inherit (buildPackages.netbsd) + makeMinimal + install + tsort + lorder + statHook + uudecode + config + genassym + ; + }; + + tsort = self.callPackage ./pkgs/tsort.nix { inherit (buildPackages.netbsd) makeMinimal install; }; } ); } From 0281c72ed31f2457ff01ba463cdf57cf56bc8120 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Thu, 20 Jun 2024 14:16:32 -0400 Subject: [PATCH 2/3] netbsd: let-bind `buildNetbsd` This way there is less "knowing our own name". --- pkgs/os-specific/bsd/netbsd/default.nix | 35 ++++++++++++++----------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index f314ba5806f7..eeccd0fa07ea 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -8,8 +8,13 @@ fetchcvs, }: -makeScopeWithSplicing' { +let otherSplices = generateSplicesForMkScope "netbsd"; + buildNetbsd = otherSplices.selfBuildHost; +in + +makeScopeWithSplicing' { + inherit otherSplices; f = ( self: lib.packagesFromDirectoryRecursive { @@ -50,18 +55,18 @@ makeScopeWithSplicing' { compat = self.callPackage ./pkgs/compat/package.nix { inherit (buildPackages) coreutils; inherit (buildPackages.darwin) cctools-port; - inherit (buildPackages.netbsd) makeMinimal; + inherit (buildNetbsd) makeMinimal; inherit (self) install; }; config = self.callPackage ./pkgs/config.nix { - inherit (buildPackages.netbsd) makeMinimal install; + inherit (buildNetbsd) makeMinimal install; inherit (self) cksum; }; csu = self.callPackage ./pkgs/csu.nix { inherit (self) headers sys-headers ld_elf_so; - inherit (buildPackages.netbsd) + inherit (buildNetbsd) netbsdSetupHook makeMinimal install @@ -74,7 +79,7 @@ makeScopeWithSplicing' { }; include = self.callPackage ./pkgs/include.nix { - inherit (buildPackages.netbsd) + inherit (buildNetbsd) makeMinimal install nbperf @@ -90,12 +95,12 @@ makeScopeWithSplicing' { make compatIfNeeded ; - inherit (buildPackages.netbsd) makeMinimal; + inherit (buildNetbsd) makeMinimal; }; libcMinimal = self.callPackage ./pkgs/libcMinimal.nix { inherit (self) headers csu; - inherit (buildPackages.netbsd) + inherit (buildNetbsd) netbsdSetupHook makeMinimal install @@ -111,7 +116,7 @@ makeScopeWithSplicing' { libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { }; librpcsvc = self.callPackage ./pkgs/librpcsvc.nix { - inherit (buildPackages.netbsd) + inherit (buildNetbsd) netbsdSetupHook makeMinimal install @@ -123,7 +128,7 @@ makeScopeWithSplicing' { }; libutil = self.callPackage ./pkgs/libutil.nix { - inherit (buildPackages.netbsd) + inherit (buildNetbsd) netbsdSetupHook makeMinimal install @@ -133,12 +138,12 @@ makeScopeWithSplicing' { ; }; - lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildPackages.netbsd) makeMinimal install; }; + lorder = self.callPackage ./pkgs/lorder.nix { inherit (buildNetbsd) makeMinimal install; }; mtree = self.callPackage ./pkgs/mtree.nix { inherit (self) mknod; }; mkDerivation = self.callPackage ./pkgs/mkDerivation.nix { - inherit (buildPackages.netbsd) + inherit (buildNetbsd) netbsdSetupHook makeMinimal install @@ -152,15 +157,13 @@ makeScopeWithSplicing' { makeMinimal = self.callPackage ./pkgs/makeMinimal.nix { inherit (self) make; }; # See note in pkgs/stat/package.nix - stat = self.callPackage ./pkgs/stat/package.nix { - inherit (buildPackages.netbsd) makeMinimal install; - }; + stat = self.callPackage ./pkgs/stat/package.nix { inherit (buildNetbsd) makeMinimal install; }; # See note in pkgs/stat/hook.nix statHook = self.callPackage ./pkgs/stat/hook.nix { inherit (self) stat; }; sys-headers = self.callPackage ./pkgs/sys/headers.nix { - inherit (buildPackages.netbsd) + inherit (buildNetbsd) makeMinimal install tsort @@ -172,7 +175,7 @@ makeScopeWithSplicing' { ; }; - tsort = self.callPackage ./pkgs/tsort.nix { inherit (buildPackages.netbsd) makeMinimal install; }; + tsort = self.callPackage ./pkgs/tsort.nix { inherit (buildNetbsd) makeMinimal install; }; } ); } From c08bf286c5dcb7463a7db310523456e24ee70b3b Mon Sep 17 00:00:00 2001 From: John Ericson Date: Thu, 20 Jun 2024 14:29:55 -0400 Subject: [PATCH 3/3] netbsd.libpthread{,-headers}: Inline `base.nix` It is just one line and thus not worth factoring out. --- .../bsd/netbsd/pkgs/libpthread/base.nix | 1 - .../bsd/netbsd/pkgs/libpthread/headers.nix | 18 ++++---- .../bsd/netbsd/pkgs/libpthread/package.nix | 42 +++++++++---------- 3 files changed, 28 insertions(+), 33 deletions(-) delete mode 100644 pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix deleted file mode 100644 index 08c298c0fe5d..000000000000 --- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix +++ /dev/null @@ -1 +0,0 @@ -{ path = "lib/libpthread"; } diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix index c3cc899017ee..41a447e2b408 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix @@ -1,12 +1,10 @@ { lib, mkDerivation }: -mkDerivation ( - import ./base.nix - // { - pname = "libpthread-headers"; - installPhase = "includesPhase"; - dontBuild = true; - noCC = true; - meta.platforms = lib.platforms.netbsd; - } -) +mkDerivation { + path = "lib/libpthread"; + pname = "libpthread-headers"; + installPhase = "includesPhase"; + dontBuild = true; + noCC = true; + meta.platforms = lib.platforms.netbsd; +} diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix index 2aa5a8f54066..8e0ef5fd1b74 100644 --- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix +++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix @@ -7,31 +7,29 @@ librt, }: -mkDerivation ( - import ./base.nix - // { +mkDerivation { + path = "lib/libpthread"; - libcMinimal = true; + libcMinimal = true; - outputs = [ - "out" - "dev" - "man" - ]; + outputs = [ + "out" + "dev" + "man" + ]; - SHLIBINSTALLDIR = "$(out)/lib"; + SHLIBINSTALLDIR = "$(out)/lib"; - # Hack around GCC's limits.h missing the include_next we want See - # https://gcc.gnu.org/legacy-ml/gcc/2003-10/msg01278.html - NIX_CFLAGS_COMPILE_BEFORE = "-isystem ${stdenvLibcMinimal.cc.libc.dev}/include"; + # Hack around GCC's limits.h missing the include_next we want See + # https://gcc.gnu.org/legacy-ml/gcc/2003-10/msg01278.html + NIX_CFLAGS_COMPILE_BEFORE = "-isystem ${stdenvLibcMinimal.cc.libc.dev}/include"; - extraPaths = [ - "common" - libcMinimal.path - librt.path - "sys" - ]; + extraPaths = [ + "common" + libcMinimal.path + librt.path + "sys" + ]; - meta.platforms = lib.platforms.netbsd; - } -) + meta.platforms = lib.platforms.netbsd; +}