From fba7dfd86ad057ec3deb6ce8ead0990bdd7a9f79 Mon Sep 17 00:00:00 2001 From: Audrey Dutcher Date: Wed, 9 Sep 2026 16:16:58 -0700 Subject: [PATCH] freebsd: correctly don't assume packages will build for platforms other than freebsd facf54a5e759f3b77024c1d5904a576244694546 was not tested correctly, and in fact had the opposite effect of its intent. --- pkgs/os-specific/bsd/freebsd/pkgs/bintrans.nix | 7 ++++++- pkgs/os-specific/bsd/freebsd/pkgs/config.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix | 1 + pkgs/os-specific/bsd/freebsd/pkgs/ctfmerge.nix | 1 + pkgs/os-specific/bsd/freebsd/pkgs/elfcopy.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/file2c.nix | 7 ++++++- pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix | 10 ++++++++-- pkgs/os-specific/bsd/freebsd/pkgs/install.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/kldxref.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/libelftc.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix | 2 ++ .../os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/libnv.nix | 7 ++++++- pkgs/os-specific/bsd/freebsd/pkgs/libpe.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix | 7 ++++++- pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix | 1 + pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix | 1 + pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix | 3 +++ pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix | 2 ++ pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix | 3 +++ 26 files changed, 79 insertions(+), 6 deletions(-) diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/bintrans.nix b/pkgs/os-specific/bsd/freebsd/pkgs/bintrans.nix index d10426e26ca1..4600a199a9a5 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/bintrans.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/bintrans.nix @@ -1,5 +1,10 @@ -{ mkDerivation }: +{ + lib, + mkDerivation, +}: mkDerivation { path = "usr.bin/bintrans"; MK_TESTS = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/config.nix b/pkgs/os-specific/bsd/freebsd/pkgs/config.nix index f7ba273ed558..223c3b396307 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/config.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/config.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, bsdSetupHook, freebsdSetupHook, @@ -32,4 +33,6 @@ mkDerivation { libnv libsbuf ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix index d1a0cb695a41..d1a3fcea72e1 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix @@ -34,4 +34,5 @@ mkDerivation { ]; meta.license = lib.licenses.cddl; + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/ctfmerge.nix b/pkgs/os-specific/bsd/freebsd/pkgs/ctfmerge.nix index 2803df747350..2449f6eebeb7 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/ctfmerge.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/ctfmerge.nix @@ -32,4 +32,5 @@ mkDerivation { ]; meta.license = lib.licenses.cddl; + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/elfcopy.nix b/pkgs/os-specific/bsd/freebsd/pkgs/elfcopy.nix index 2cd0aeac2b83..a38ddc245eb3 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/elfcopy.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/elfcopy.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, compatIfNeeded, libelf, @@ -24,4 +25,6 @@ mkDerivation { # since we built libpe and co separate they are not internal and thus not pie...? MK_PIE = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/file2c.nix b/pkgs/os-specific/bsd/freebsd/pkgs/file2c.nix index ff35d97afe36..98d63ac2278c 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/file2c.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/file2c.nix @@ -1,6 +1,11 @@ -{ mkDerivation }: +{ + lib, + mkDerivation, +}: mkDerivation { path = "usr.bin/file2c"; MK_TESTS = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix b/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix index ea701b6404ec..fd28d9f2c2c7 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix @@ -1,3 +1,9 @@ -{ mkDerivation }: +{ + lib, mkDerivation, +}: -mkDerivation { path = "usr.bin/gencat"; } +mkDerivation { + path = "usr.bin/gencat"; + + meta.platforms = lib.platforms.unix; +} diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/install.nix b/pkgs/os-specific/bsd/freebsd/pkgs/install.nix index d8dbf2ffa18b..6e5bc19cdc60 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/install.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/install.nix @@ -70,4 +70,6 @@ mkDerivation { "man" "test" ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/kldxref.nix b/pkgs/os-specific/bsd/freebsd/pkgs/kldxref.nix index 4119b0690cee..b23bce4032b5 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/kldxref.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/kldxref.nix @@ -26,4 +26,6 @@ mkDerivation { postPatch = '' sed -i 's/FTS_PHYSICAL/FTS_LOGICAL/' $BSDSRCDIR/usr.sbin/kldxref/kldxref.c ''; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix index cbd3bda91925..4bd0e792ad20 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, m4, compatIfNeeded, @@ -21,4 +22,6 @@ mkDerivation { libelf ]; MK_TESTS = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix index 0afedf611112..e56fc5fbfe5a 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix @@ -41,4 +41,6 @@ mkDerivation { preBuild = lib.optionalString stdenv.hostPlatform.isFreeBSD '' export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -B${csu}/lib" ''; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libelftc.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libelftc.nix index 44a26482bc83..4e28e891a43a 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libelftc.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libelftc.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, libelf, compatIfNeeded, @@ -19,4 +20,6 @@ mkDerivation { ''; alwaysKeepStatic = true; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix index f6f0598d849a..d14d8365b242 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix @@ -70,6 +70,8 @@ mkDerivation ( cp "$f" "$man/share/man/$f" done ''; + + meta.platforms = lib.platforms.unix; } // lib.optionalAttrs bootstrapInstallation { nativeBuildInputs = [ diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix index 4cd030ebe02e..db844d26ad34 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix @@ -28,4 +28,6 @@ mkDerivation { ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) "INSTALL=boot-install"; alwaysKeepStatic = true; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libnv.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libnv.nix index 6ce61e5a68c7..f1cc7d6d835d 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libnv.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libnv.nix @@ -1,4 +1,7 @@ -{ mkDerivation }: +{ + lib, + mkDerivation, +}: mkDerivation { path = "lib/libnv"; @@ -7,4 +10,6 @@ mkDerivation { "sys/sys" ]; MK_TESTS = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libpe.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libpe.nix index 1abdef936041..dad231089719 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libpe.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libpe.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, }: mkDerivation { @@ -13,4 +14,6 @@ mkDerivation { ''; alwaysKeepStatic = true; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix index f8e729d2d76e..7ae988dab880 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix @@ -1,7 +1,12 @@ -{ mkDerivation }: +{ + lib, + mkDerivation, +}: mkDerivation { path = "lib/libsbuf"; extraPaths = [ "sys/kern" ]; env.MK_TESTS = "no"; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix index 0f8e5b812fea..21e576d37871 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix @@ -19,5 +19,6 @@ mkDerivation { meta = { license = lib.licenses.cddl; + platforms = lib.platforms.unix; }; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix b/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix index 25e7f491a1c9..acc2f0d34ac7 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, bsdSetupHook, freebsdSetupHook, @@ -22,4 +23,6 @@ mkDerivation { "out" "man" ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix b/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix index 069e74474852..c3f01f34b570 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix @@ -65,4 +65,6 @@ mkDerivation { ''; extraPaths = make.extraPaths; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix index 1325fcb4c663..aec5608a1d2c 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix @@ -114,6 +114,7 @@ lib.makeOverridable ( artemist ]; license = lib.licenses.bsd2; + platforms = lib.platforms.freebsd; } // attrs.meta or { }; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix index 80804123852e..05e840df9849 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix @@ -1,4 +1,5 @@ { + lib, stdenv, mkDerivation, byacc, @@ -17,4 +18,6 @@ mkDerivation { byacc flex ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix index 9c0ec2892802..62d5df5177e1 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, byacc, flex, @@ -13,4 +14,6 @@ mkDerivation { byacc flex ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix index 746d6a1d958c..c5a1fdfcdbb8 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix @@ -42,4 +42,6 @@ mkDerivation { ) }" ''; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix index 49b2ef805bc1..9d54326bc240 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix @@ -23,4 +23,6 @@ mkDerivation { # the problem is fixed properly in glibc. ./rpcgen-glibc-hack.patch ]; + + meta.platforms = lib.platforms.unix; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix b/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix index 8ccf12f846b3..794c300dd3a4 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix @@ -1,4 +1,5 @@ { + lib, mkDerivation, bsdSetupHook, freebsdSetupHook, @@ -24,4 +25,6 @@ mkDerivation { mandoc groff ]; + + meta.platforms = lib.platforms.unix; }