From aa5028110f3451cc1b7783c853ca957161a4423d Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Sun, 5 Apr 2026 19:46:47 -0400 Subject: [PATCH] darwin: migrate to by-name --- .../reattach-to-user-namespace/package.nix} | 0 .../ad}/adv_cmds/meson.build.in | 0 .../ad}/adv_cmds/package.nix | 0 .../auto-sign-hook.sh | 0 .../au/autoSignDarwinBinariesHook/package.nix | 6 + .../av}/AvailabilityVersions/package.nix | 0 ...t-setting-an-upper-bound-on-versions.patch | 0 .../ba}/basic_cmds/meson.build.in | 0 .../ba}/basic_cmds/package.nix | 0 .../bi/binutils-unwrapped/package.nix} | 0 .../bo}/bootstrap_cmds/meson.build.in | 0 .../bo}/bootstrap_cmds/package.nix | 0 ...pecify-MIGCC-for-use-with-substitute.patch | 0 ...0002-Always-remove-working-directory.patch | 0 .../co}/copyfile/meson.build.in | 0 .../co}/copyfile/package.nix | 0 .../cs}/Csu/package.nix | 3 +- .../cs}/Csu/setup-hooks/add-Csu-lib-path.sh | 0 .../by-name/cs/Csu/setup-hooks/role.bash | 71 ++++ .../da/DarwinTools/package.nix} | 0 .../da}/DarwinTools/sw_vers-CFPriv.patch | 0 .../de}/developer_cmds/meson.build.in | 0 .../de}/developer_cmds/package.nix | 0 .../di}/diskdev_cmds/meson.build.in | 0 .../di}/diskdev_cmds/package.nix | 0 .../do}/doc_cmds/meson.build.in | 0 .../do}/doc_cmds/package.nix | 0 .../dy}/dyld/meson.build.in | 0 .../dy}/dyld/package.nix | 0 .../patches/0001-Disable-kdebug-trace.patch | 0 .../dyld/patches/0003-Add-weaklinking_h.patch | 0 .../0004-Fix-llvm-op-info-callback-args.patch | 0 ...SL-based-CoreCrypto-digest-functions.patch | 0 .../0006-Add-dsc_extractor_bin_cpp.patch | 0 .../0007-Fix-missing-writeChainEntry.patch | 0 .../fi}/file_cmds/meson.build.in | 0 .../fi}/file_cmds/package.nix | 0 ...missing-extern-unix2003_compat-to-ls.patch | 0 ...-missing-ifdef-for-private-APFS-APIs.patch | 0 .../ic}/ICU/package.nix | 0 .../patches/suppress-icu-check-crash.patch | 0 .../io}/IOKitTools/meson.build.in | 0 .../io}/IOKitTools/package.nix | 0 .../io/iosSdkPkgs/package.nix} | 16 +- .../li/libSystem/package.nix} | 0 .../li/libcxx/package.nix} | 0 .../li}/libffi/package.nix | 0 .../li}/libffi/patches/automake-1.18.patch | 0 .../patches/fix-tramponline-memory-leak.patch | 0 .../li}/libiconv/meson.build.in | 0 .../li}/libiconv/meson.options | 0 .../li}/libiconv/nixpkgs_test.c | 0 .../li}/libiconv/package.nix | 0 .../0001-Support-static-module-loading.patch | 0 ...-of-bounds-write-with-encoded-charac.patch | 0 .../li}/libiconv/static-modules.gperf | 0 .../li}/libpcap/package.nix | 0 .../li}/libresolv/meson.build.in | 0 .../li}/libresolv/package.nix | 0 .../li}/libsbuf/meson.build.in | 0 .../li}/libsbuf/package.nix | 0 .../patches/0001-darwin-compatibility.patch | 0 .../li/libunwind/package.nix} | 0 .../li}/libutil/meson.build.in | 0 .../li}/libutil/package.nix | 0 .../lo}/locale/package.nix | 0 .../ls/lsusb/package.nix} | 0 .../ma}/mail_cmds/meson.build.in | 0 .../ma}/mail_cmds/package.nix | 0 .../mi}/misc_cmds/meson.build.in | 0 .../mi}/misc_cmds/package.nix | 0 .../ne}/network_cmds/meson.build.in | 0 .../ne}/network_cmds/package.nix | 0 ...SL-based-CoreCrypto-digest-functions.patch | 0 .../pa}/patch_cmds/meson.build.in | 0 .../pa}/patch_cmds/package.nix | 0 .../po}/PowerManagement/meson.build.in | 0 .../po}/PowerManagement/package.nix | 0 .../re}/remote_cmds/meson.build.in | 0 .../re}/remote_cmds/package.nix | 0 .../re}/removefile/meson.build.in | 0 .../re}/removefile/package.nix | 0 .../sh}/shell_cmds/meson.build.in | 0 .../sh}/shell_cmds/package.nix | 0 .../si/signingUtils/package.nix} | 0 .../si/signingUtils}/utils.sh | 0 .../si/sigtool/package.nix} | 0 .../sy}/system_cmds/meson.build.in | 0 .../sy}/system_cmds/package.nix | 0 ...itionalize-security-transition-shims.patch | 0 .../te}/text_cmds/meson.build.in | 0 .../te}/text_cmds/package.nix | 0 .../to}/top/meson.build.in | 0 .../to}/top/package.nix | 0 ...-change-that-dropped-aarch64-support.patch | 0 .../tr/trash/package.nix} | 0 .../darwin/{ => by-name/tr}/trash/trash.diff | 0 .../xc/xcodeProjectCheckHook/package.nix | 6 + .../xc/xcodeProjectCheckHook}/setup-hook.sh | 0 .../darwin/ghc-standalone-archive/default.nix | 27 -- .../default.nix} | 12 +- .../update-source-releases.sh | 0 .../versions.json | 0 pkgs/top-level/all-packages.nix | 30 +- pkgs/top-level/darwin-packages.nix | 343 ++++++++---------- 105 files changed, 289 insertions(+), 225 deletions(-) rename pkgs/{os-specific/darwin/reattach-to-user-namespace/default.nix => by-name/re/reattach-to-user-namespace/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ad}/adv_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ad}/adv_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{signing-utils => by-name/au/autoSignDarwinBinariesHook}/auto-sign-hook.sh (100%) create mode 100644 pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/package.nix rename pkgs/os-specific/darwin/{apple-source-releases => by-name/av}/AvailabilityVersions/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/av}/AvailabilityVersions/patches/0001-Support-setting-an-upper-bound-on-versions.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ba}/basic_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ba}/basic_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{binutils/default.nix => by-name/bi/binutils-unwrapped/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/bo}/bootstrap_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/bo}/bootstrap_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/bo}/bootstrap_cmds/patches/0001-Specify-MIGCC-for-use-with-substitute.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/bo}/bootstrap_cmds/patches/0002-Always-remove-working-directory.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/co}/copyfile/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/co}/copyfile/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/cs}/Csu/package.nix (86%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/cs}/Csu/setup-hooks/add-Csu-lib-path.sh (100%) create mode 100644 pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/role.bash rename pkgs/os-specific/darwin/{DarwinTools/default.nix => by-name/da/DarwinTools/package.nix} (100%) rename pkgs/os-specific/darwin/{ => by-name/da}/DarwinTools/sw_vers-CFPriv.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/de}/developer_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/de}/developer_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/di}/diskdev_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/di}/diskdev_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/do}/doc_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/do}/doc_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0001-Disable-kdebug-trace.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0003-Add-weaklinking_h.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0004-Fix-llvm-op-info-callback-args.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0005-Add-OpenSSL-based-CoreCrypto-digest-functions.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0006-Add-dsc_extractor_bin_cpp.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/dy}/dyld/patches/0007-Fix-missing-writeChainEntry.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/fi}/file_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/fi}/file_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/fi}/file_cmds/patches/0001-Add-missing-extern-unix2003_compat-to-ls.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/fi}/file_cmds/patches/0002-Add-missing-ifdef-for-private-APFS-APIs.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ic}/ICU/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ic}/ICU/patches/suppress-icu-check-crash.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/io}/IOKitTools/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/io}/IOKitTools/package.nix (100%) rename pkgs/os-specific/darwin/{xcode/sdk-pkgs.nix => by-name/io/iosSdkPkgs/package.nix} (91%) rename pkgs/os-specific/darwin/{libSystem/default.nix => by-name/li/libSystem/package.nix} (100%) rename pkgs/os-specific/darwin/{libcxx/default.nix => by-name/li/libcxx/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libffi/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libffi/patches/automake-1.18.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libffi/patches/fix-tramponline-memory-leak.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/meson.options (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/nixpkgs_test.c (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/patches/0001-Support-static-module-loading.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/patches/0002-Fix-ISO-2022-out-of-bounds-write-with-encoded-charac.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libiconv/static-modules.gperf (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libpcap/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libresolv/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libresolv/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libsbuf/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libsbuf/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libsbuf/patches/0001-darwin-compatibility.patch (100%) rename pkgs/os-specific/darwin/{libunwind/default.nix => by-name/li/libunwind/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libutil/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/li}/libutil/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/lo}/locale/package.nix (100%) rename pkgs/os-specific/darwin/{lsusb/default.nix => by-name/ls/lsusb/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ma}/mail_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ma}/mail_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/mi}/misc_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/mi}/misc_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ne}/network_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ne}/network_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/ne}/network_cmds/patches/0007-Add-OpenSSL-based-CoreCrypto-digest-functions.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/pa}/patch_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/pa}/patch_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/po}/PowerManagement/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/po}/PowerManagement/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/re}/remote_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/re}/remote_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/re}/removefile/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/re}/removefile/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/sh}/shell_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/sh}/shell_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{signing-utils/default.nix => by-name/si/signingUtils/package.nix} (100%) rename pkgs/os-specific/darwin/{signing-utils => by-name/si/signingUtils}/utils.sh (100%) rename pkgs/os-specific/darwin/{sigtool/default.nix => by-name/si/sigtool/package.nix} (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/sy}/system_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/sy}/system_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/sy}/system_cmds/patches/conditionalize-security-transition-shims.patch (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/te}/text_cmds/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/te}/text_cmds/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/to}/top/meson.build.in (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/to}/top/package.nix (100%) rename pkgs/os-specific/darwin/{apple-source-releases => by-name/to}/top/patches/0001-Revert-change-that-dropped-aarch64-support.patch (100%) rename pkgs/os-specific/darwin/{trash/default.nix => by-name/tr/trash/package.nix} (100%) rename pkgs/os-specific/darwin/{ => by-name/tr}/trash/trash.diff (100%) create mode 100644 pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/package.nix rename pkgs/os-specific/darwin/{xcode-project-check-hook => by-name/xc/xcodeProjectCheckHook}/setup-hook.sh (100%) delete mode 100644 pkgs/os-specific/darwin/ghc-standalone-archive/default.nix rename pkgs/os-specific/darwin/{apple-source-releases/mkAppleDerivation.nix => mk-apple-derivation/default.nix} (88%) rename pkgs/os-specific/darwin/{apple-source-releases => mk-apple-derivation}/update-source-releases.sh (100%) rename pkgs/os-specific/darwin/{apple-source-releases => mk-apple-derivation}/versions.json (100%) diff --git a/pkgs/os-specific/darwin/reattach-to-user-namespace/default.nix b/pkgs/by-name/re/reattach-to-user-namespace/package.nix similarity index 100% rename from pkgs/os-specific/darwin/reattach-to-user-namespace/default.nix rename to pkgs/by-name/re/reattach-to-user-namespace/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/ad/adv_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/adv_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/ad/adv_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/package.nix b/pkgs/os-specific/darwin/by-name/ad/adv_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/adv_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/ad/adv_cmds/package.nix diff --git a/pkgs/os-specific/darwin/signing-utils/auto-sign-hook.sh b/pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/auto-sign-hook.sh similarity index 100% rename from pkgs/os-specific/darwin/signing-utils/auto-sign-hook.sh rename to pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/auto-sign-hook.sh diff --git a/pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/package.nix b/pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/package.nix new file mode 100644 index 000000000000..b4d9eda8aba8 --- /dev/null +++ b/pkgs/os-specific/darwin/by-name/au/autoSignDarwinBinariesHook/package.nix @@ -0,0 +1,6 @@ +{ signingUtils, makeSetupHook }: + +makeSetupHook { + name = "auto-sign-darwin-binaries-hook"; + propagatedBuildInputs = [ signingUtils ]; +} ./auto-sign-hook.sh diff --git a/pkgs/os-specific/darwin/apple-source-releases/AvailabilityVersions/package.nix b/pkgs/os-specific/darwin/by-name/av/AvailabilityVersions/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/AvailabilityVersions/package.nix rename to pkgs/os-specific/darwin/by-name/av/AvailabilityVersions/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/AvailabilityVersions/patches/0001-Support-setting-an-upper-bound-on-versions.patch b/pkgs/os-specific/darwin/by-name/av/AvailabilityVersions/patches/0001-Support-setting-an-upper-bound-on-versions.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/AvailabilityVersions/patches/0001-Support-setting-an-upper-bound-on-versions.patch rename to pkgs/os-specific/darwin/by-name/av/AvailabilityVersions/patches/0001-Support-setting-an-upper-bound-on-versions.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/basic_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/ba/basic_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/basic_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/ba/basic_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/basic_cmds/package.nix b/pkgs/os-specific/darwin/by-name/ba/basic_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/basic_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/ba/basic_cmds/package.nix diff --git a/pkgs/os-specific/darwin/binutils/default.nix b/pkgs/os-specific/darwin/by-name/bi/binutils-unwrapped/package.nix similarity index 100% rename from pkgs/os-specific/darwin/binutils/default.nix rename to pkgs/os-specific/darwin/by-name/bi/binutils-unwrapped/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/package.nix b/pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/patches/0001-Specify-MIGCC-for-use-with-substitute.patch b/pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/patches/0001-Specify-MIGCC-for-use-with-substitute.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/patches/0001-Specify-MIGCC-for-use-with-substitute.patch rename to pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/patches/0001-Specify-MIGCC-for-use-with-substitute.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/patches/0002-Always-remove-working-directory.patch b/pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/patches/0002-Always-remove-working-directory.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/patches/0002-Always-remove-working-directory.patch rename to pkgs/os-specific/darwin/by-name/bo/bootstrap_cmds/patches/0002-Always-remove-working-directory.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/copyfile/meson.build.in b/pkgs/os-specific/darwin/by-name/co/copyfile/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/copyfile/meson.build.in rename to pkgs/os-specific/darwin/by-name/co/copyfile/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/copyfile/package.nix b/pkgs/os-specific/darwin/by-name/co/copyfile/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/copyfile/package.nix rename to pkgs/os-specific/darwin/by-name/co/copyfile/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/Csu/package.nix b/pkgs/os-specific/darwin/by-name/cs/Csu/package.nix similarity index 86% rename from pkgs/os-specific/darwin/apple-source-releases/Csu/package.nix rename to pkgs/os-specific/darwin/by-name/cs/Csu/package.nix index 32e4a82f7019..7a0800a36542 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/Csu/package.nix +++ b/pkgs/os-specific/darwin/by-name/cs/Csu/package.nix @@ -19,7 +19,8 @@ mkAppleDerivation { installFlags = [ "DSTROOT=$(out)" ]; setupHooks = [ - ../../../../build-support/setup-hooks/role.bash + # Vendored to avoid referencing files outside of the package. + ./setup-hooks/role.bash # ccWrapper_addCVars doesn’t add Csu to `NIX_LDFLAGS` because it contains objects and no dylibs. ./setup-hooks/add-Csu-lib-path.sh ]; diff --git a/pkgs/os-specific/darwin/apple-source-releases/Csu/setup-hooks/add-Csu-lib-path.sh b/pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/add-Csu-lib-path.sh similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/Csu/setup-hooks/add-Csu-lib-path.sh rename to pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/add-Csu-lib-path.sh diff --git a/pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/role.bash b/pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/role.bash new file mode 100644 index 000000000000..bfd6b61f0aed --- /dev/null +++ b/pkgs/os-specific/darwin/by-name/cs/Csu/setup-hooks/role.bash @@ -0,0 +1,71 @@ +# Since the same derivation can be depended on in multiple ways, we need to +# accumulate *each* role (i.e. host and target platforms relative the depending +# derivation) in which the derivation is used. +# +# The role is intended to be used as part of other variables names like +# - $NIX_SOMETHING${role_post} + +function getRole() { + case $1 in + -1) + role_post='_FOR_BUILD' + ;; + 0) + role_post='' + ;; + 1) + role_post='_FOR_TARGET' + ;; + *) + echo "@name@: used as improper sort of dependency" >&2 + return 1 + ;; + esac +} + +# `hostOffset` describes how the host platform of the package is slid relative +# to the depending package. `targetOffset` likewise describes the target +# platform of the package. Both are brought into scope of the setup hook defined +# for dependency whose setup hook is being processed relative to the package +# being built. + +function getHostRole() { + getRole "$hostOffset" +} +function getTargetRole() { + getRole "$targetOffset" +} + +# `depHostOffset` describes how the host platform of the dependencies are slid +# relative to the depending package. `depTargetOffset` likewise describes the +# target platform of dependenices. Both are brought into scope of the +# environment hook defined for the dependency being applied relative to the +# package being built. + +function getHostRoleEnvHook() { + getRole "$depHostOffset" +} +function getTargetRoleEnvHook() { + getRole "$depTargetOffset" +} + +# This variant is intended specifically for code-producing tool wrapper scripts +# `NIX_@wrapperName@_TARGET_*_@suffixSalt@` tracks this (needs to be an exported +# env var so can't use fancier data structures). +function getTargetRoleWrapper() { + case $targetOffset in + -1) + export NIX_@wrapperName@_TARGET_BUILD_@suffixSalt@=1 + ;; + 0) + export NIX_@wrapperName@_TARGET_HOST_@suffixSalt@=1 + ;; + 1) + export NIX_@wrapperName@_TARGET_TARGET_@suffixSalt@=1 + ;; + *) + echo "@name@: used as improper sort of dependency" >&2 + return 1 + ;; + esac +} diff --git a/pkgs/os-specific/darwin/DarwinTools/default.nix b/pkgs/os-specific/darwin/by-name/da/DarwinTools/package.nix similarity index 100% rename from pkgs/os-specific/darwin/DarwinTools/default.nix rename to pkgs/os-specific/darwin/by-name/da/DarwinTools/package.nix diff --git a/pkgs/os-specific/darwin/DarwinTools/sw_vers-CFPriv.patch b/pkgs/os-specific/darwin/by-name/da/DarwinTools/sw_vers-CFPriv.patch similarity index 100% rename from pkgs/os-specific/darwin/DarwinTools/sw_vers-CFPriv.patch rename to pkgs/os-specific/darwin/by-name/da/DarwinTools/sw_vers-CFPriv.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/de/developer_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/developer_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/de/developer_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/package.nix b/pkgs/os-specific/darwin/by-name/de/developer_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/developer_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/de/developer_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/di/diskdev_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/di/diskdev_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/package.nix b/pkgs/os-specific/darwin/by-name/di/diskdev_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/di/diskdev_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/doc_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/do/doc_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/doc_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/do/doc_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/doc_cmds/package.nix b/pkgs/os-specific/darwin/by-name/do/doc_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/doc_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/do/doc_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/meson.build.in b/pkgs/os-specific/darwin/by-name/dy/dyld/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/meson.build.in rename to pkgs/os-specific/darwin/by-name/dy/dyld/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/package.nix b/pkgs/os-specific/darwin/by-name/dy/dyld/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/package.nix rename to pkgs/os-specific/darwin/by-name/dy/dyld/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0001-Disable-kdebug-trace.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0001-Disable-kdebug-trace.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0001-Disable-kdebug-trace.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0001-Disable-kdebug-trace.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0003-Add-weaklinking_h.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0003-Add-weaklinking_h.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0003-Add-weaklinking_h.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0003-Add-weaklinking_h.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0004-Fix-llvm-op-info-callback-args.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0004-Fix-llvm-op-info-callback-args.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0004-Fix-llvm-op-info-callback-args.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0004-Fix-llvm-op-info-callback-args.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0005-Add-OpenSSL-based-CoreCrypto-digest-functions.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0005-Add-OpenSSL-based-CoreCrypto-digest-functions.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0005-Add-OpenSSL-based-CoreCrypto-digest-functions.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0005-Add-OpenSSL-based-CoreCrypto-digest-functions.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0006-Add-dsc_extractor_bin_cpp.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0006-Add-dsc_extractor_bin_cpp.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0006-Add-dsc_extractor_bin_cpp.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0006-Add-dsc_extractor_bin_cpp.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0007-Fix-missing-writeChainEntry.patch b/pkgs/os-specific/darwin/by-name/dy/dyld/patches/0007-Fix-missing-writeChainEntry.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/dyld/patches/0007-Fix-missing-writeChainEntry.patch rename to pkgs/os-specific/darwin/by-name/dy/dyld/patches/0007-Fix-missing-writeChainEntry.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/fi/file_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/file_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/fi/file_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/package.nix b/pkgs/os-specific/darwin/by-name/fi/file_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/file_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/fi/file_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/patches/0001-Add-missing-extern-unix2003_compat-to-ls.patch b/pkgs/os-specific/darwin/by-name/fi/file_cmds/patches/0001-Add-missing-extern-unix2003_compat-to-ls.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/file_cmds/patches/0001-Add-missing-extern-unix2003_compat-to-ls.patch rename to pkgs/os-specific/darwin/by-name/fi/file_cmds/patches/0001-Add-missing-extern-unix2003_compat-to-ls.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/file_cmds/patches/0002-Add-missing-ifdef-for-private-APFS-APIs.patch b/pkgs/os-specific/darwin/by-name/fi/file_cmds/patches/0002-Add-missing-ifdef-for-private-APFS-APIs.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/file_cmds/patches/0002-Add-missing-ifdef-for-private-APFS-APIs.patch rename to pkgs/os-specific/darwin/by-name/fi/file_cmds/patches/0002-Add-missing-ifdef-for-private-APFS-APIs.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/ICU/package.nix b/pkgs/os-specific/darwin/by-name/ic/ICU/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/ICU/package.nix rename to pkgs/os-specific/darwin/by-name/ic/ICU/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/ICU/patches/suppress-icu-check-crash.patch b/pkgs/os-specific/darwin/by-name/ic/ICU/patches/suppress-icu-check-crash.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/ICU/patches/suppress-icu-check-crash.patch rename to pkgs/os-specific/darwin/by-name/ic/ICU/patches/suppress-icu-check-crash.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/IOKitTools/meson.build.in b/pkgs/os-specific/darwin/by-name/io/IOKitTools/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/IOKitTools/meson.build.in rename to pkgs/os-specific/darwin/by-name/io/IOKitTools/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/IOKitTools/package.nix b/pkgs/os-specific/darwin/by-name/io/IOKitTools/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/IOKitTools/package.nix rename to pkgs/os-specific/darwin/by-name/io/IOKitTools/package.nix diff --git a/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix b/pkgs/os-specific/darwin/by-name/io/iosSdkPkgs/package.nix similarity index 91% rename from pkgs/os-specific/darwin/xcode/sdk-pkgs.nix rename to pkgs/os-specific/darwin/by-name/io/iosSdkPkgs/package.nix index 05f9acf5b36c..4e675d91d22f 100644 --- a/pkgs/os-specific/darwin/xcode/sdk-pkgs.nix +++ b/pkgs/os-specific/darwin/by-name/io/iosSdkPkgs/package.nix @@ -1,15 +1,19 @@ { - stdenv, - clang-unwrapped, + lib, binutils-unwrapped, + clang-unwrapped, + iosSdkPkgs, runCommand, - + stdenv, wrapBintoolsWith, wrapCCWith, - buildIosSdk, - targetIosSdkPkgs, xcode, - lib, + + buildPackages, + targetPackages, + + buildIosSdk ? buildPackages.darwin.iosSdkPkgs.sdk, + targetIosSdkPkgs ? targetPackages.darwin.iosSdkPkgs or iosSdkPkgs, }: let diff --git a/pkgs/os-specific/darwin/libSystem/default.nix b/pkgs/os-specific/darwin/by-name/li/libSystem/package.nix similarity index 100% rename from pkgs/os-specific/darwin/libSystem/default.nix rename to pkgs/os-specific/darwin/by-name/li/libSystem/package.nix diff --git a/pkgs/os-specific/darwin/libcxx/default.nix b/pkgs/os-specific/darwin/by-name/li/libcxx/package.nix similarity index 100% rename from pkgs/os-specific/darwin/libcxx/default.nix rename to pkgs/os-specific/darwin/by-name/li/libcxx/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libffi/package.nix b/pkgs/os-specific/darwin/by-name/li/libffi/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libffi/package.nix rename to pkgs/os-specific/darwin/by-name/li/libffi/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libffi/patches/automake-1.18.patch b/pkgs/os-specific/darwin/by-name/li/libffi/patches/automake-1.18.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libffi/patches/automake-1.18.patch rename to pkgs/os-specific/darwin/by-name/li/libffi/patches/automake-1.18.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/libffi/patches/fix-tramponline-memory-leak.patch b/pkgs/os-specific/darwin/by-name/li/libffi/patches/fix-tramponline-memory-leak.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libffi/patches/fix-tramponline-memory-leak.patch rename to pkgs/os-specific/darwin/by-name/li/libffi/patches/fix-tramponline-memory-leak.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/meson.build.in b/pkgs/os-specific/darwin/by-name/li/libiconv/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/meson.build.in rename to pkgs/os-specific/darwin/by-name/li/libiconv/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/meson.options b/pkgs/os-specific/darwin/by-name/li/libiconv/meson.options similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/meson.options rename to pkgs/os-specific/darwin/by-name/li/libiconv/meson.options diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/nixpkgs_test.c b/pkgs/os-specific/darwin/by-name/li/libiconv/nixpkgs_test.c similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/nixpkgs_test.c rename to pkgs/os-specific/darwin/by-name/li/libiconv/nixpkgs_test.c diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/package.nix b/pkgs/os-specific/darwin/by-name/li/libiconv/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/package.nix rename to pkgs/os-specific/darwin/by-name/li/libiconv/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/patches/0001-Support-static-module-loading.patch b/pkgs/os-specific/darwin/by-name/li/libiconv/patches/0001-Support-static-module-loading.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/patches/0001-Support-static-module-loading.patch rename to pkgs/os-specific/darwin/by-name/li/libiconv/patches/0001-Support-static-module-loading.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/patches/0002-Fix-ISO-2022-out-of-bounds-write-with-encoded-charac.patch b/pkgs/os-specific/darwin/by-name/li/libiconv/patches/0002-Fix-ISO-2022-out-of-bounds-write-with-encoded-charac.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/patches/0002-Fix-ISO-2022-out-of-bounds-write-with-encoded-charac.patch rename to pkgs/os-specific/darwin/by-name/li/libiconv/patches/0002-Fix-ISO-2022-out-of-bounds-write-with-encoded-charac.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/static-modules.gperf b/pkgs/os-specific/darwin/by-name/li/libiconv/static-modules.gperf similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libiconv/static-modules.gperf rename to pkgs/os-specific/darwin/by-name/li/libiconv/static-modules.gperf diff --git a/pkgs/os-specific/darwin/apple-source-releases/libpcap/package.nix b/pkgs/os-specific/darwin/by-name/li/libpcap/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libpcap/package.nix rename to pkgs/os-specific/darwin/by-name/li/libpcap/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libresolv/meson.build.in b/pkgs/os-specific/darwin/by-name/li/libresolv/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libresolv/meson.build.in rename to pkgs/os-specific/darwin/by-name/li/libresolv/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/libresolv/package.nix b/pkgs/os-specific/darwin/by-name/li/libresolv/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libresolv/package.nix rename to pkgs/os-specific/darwin/by-name/li/libresolv/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsbuf/meson.build.in b/pkgs/os-specific/darwin/by-name/li/libsbuf/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libsbuf/meson.build.in rename to pkgs/os-specific/darwin/by-name/li/libsbuf/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsbuf/package.nix b/pkgs/os-specific/darwin/by-name/li/libsbuf/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libsbuf/package.nix rename to pkgs/os-specific/darwin/by-name/li/libsbuf/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsbuf/patches/0001-darwin-compatibility.patch b/pkgs/os-specific/darwin/by-name/li/libsbuf/patches/0001-darwin-compatibility.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libsbuf/patches/0001-darwin-compatibility.patch rename to pkgs/os-specific/darwin/by-name/li/libsbuf/patches/0001-darwin-compatibility.patch diff --git a/pkgs/os-specific/darwin/libunwind/default.nix b/pkgs/os-specific/darwin/by-name/li/libunwind/package.nix similarity index 100% rename from pkgs/os-specific/darwin/libunwind/default.nix rename to pkgs/os-specific/darwin/by-name/li/libunwind/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/libutil/meson.build.in b/pkgs/os-specific/darwin/by-name/li/libutil/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libutil/meson.build.in rename to pkgs/os-specific/darwin/by-name/li/libutil/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/libutil/package.nix b/pkgs/os-specific/darwin/by-name/li/libutil/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/libutil/package.nix rename to pkgs/os-specific/darwin/by-name/li/libutil/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/locale/package.nix b/pkgs/os-specific/darwin/by-name/lo/locale/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/locale/package.nix rename to pkgs/os-specific/darwin/by-name/lo/locale/package.nix diff --git a/pkgs/os-specific/darwin/lsusb/default.nix b/pkgs/os-specific/darwin/by-name/ls/lsusb/package.nix similarity index 100% rename from pkgs/os-specific/darwin/lsusb/default.nix rename to pkgs/os-specific/darwin/by-name/ls/lsusb/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/mail_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/ma/mail_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/mail_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/ma/mail_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/mail_cmds/package.nix b/pkgs/os-specific/darwin/by-name/ma/mail_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/mail_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/ma/mail_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/misc_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/mi/misc_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/misc_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/mi/misc_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/misc_cmds/package.nix b/pkgs/os-specific/darwin/by-name/mi/misc_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/misc_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/mi/misc_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/network_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/ne/network_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/network_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/ne/network_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/network_cmds/package.nix b/pkgs/os-specific/darwin/by-name/ne/network_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/network_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/ne/network_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/network_cmds/patches/0007-Add-OpenSSL-based-CoreCrypto-digest-functions.patch b/pkgs/os-specific/darwin/by-name/ne/network_cmds/patches/0007-Add-OpenSSL-based-CoreCrypto-digest-functions.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/network_cmds/patches/0007-Add-OpenSSL-based-CoreCrypto-digest-functions.patch rename to pkgs/os-specific/darwin/by-name/ne/network_cmds/patches/0007-Add-OpenSSL-based-CoreCrypto-digest-functions.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/patch_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/pa/patch_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/patch_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/pa/patch_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/patch_cmds/package.nix b/pkgs/os-specific/darwin/by-name/pa/patch_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/patch_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/pa/patch_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/PowerManagement/meson.build.in b/pkgs/os-specific/darwin/by-name/po/PowerManagement/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/PowerManagement/meson.build.in rename to pkgs/os-specific/darwin/by-name/po/PowerManagement/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/PowerManagement/package.nix b/pkgs/os-specific/darwin/by-name/po/PowerManagement/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/PowerManagement/package.nix rename to pkgs/os-specific/darwin/by-name/po/PowerManagement/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/remote_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/re/remote_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/remote_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/re/remote_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/remote_cmds/package.nix b/pkgs/os-specific/darwin/by-name/re/remote_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/remote_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/re/remote_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/removefile/meson.build.in b/pkgs/os-specific/darwin/by-name/re/removefile/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/removefile/meson.build.in rename to pkgs/os-specific/darwin/by-name/re/removefile/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/removefile/package.nix b/pkgs/os-specific/darwin/by-name/re/removefile/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/removefile/package.nix rename to pkgs/os-specific/darwin/by-name/re/removefile/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/shell_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/sh/shell_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/shell_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/sh/shell_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/shell_cmds/package.nix b/pkgs/os-specific/darwin/by-name/sh/shell_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/shell_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/sh/shell_cmds/package.nix diff --git a/pkgs/os-specific/darwin/signing-utils/default.nix b/pkgs/os-specific/darwin/by-name/si/signingUtils/package.nix similarity index 100% rename from pkgs/os-specific/darwin/signing-utils/default.nix rename to pkgs/os-specific/darwin/by-name/si/signingUtils/package.nix diff --git a/pkgs/os-specific/darwin/signing-utils/utils.sh b/pkgs/os-specific/darwin/by-name/si/signingUtils/utils.sh similarity index 100% rename from pkgs/os-specific/darwin/signing-utils/utils.sh rename to pkgs/os-specific/darwin/by-name/si/signingUtils/utils.sh diff --git a/pkgs/os-specific/darwin/sigtool/default.nix b/pkgs/os-specific/darwin/by-name/si/sigtool/package.nix similarity index 100% rename from pkgs/os-specific/darwin/sigtool/default.nix rename to pkgs/os-specific/darwin/by-name/si/sigtool/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/sy/system_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/sy/system_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/system_cmds/package.nix b/pkgs/os-specific/darwin/by-name/sy/system_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/system_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/sy/system_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/system_cmds/patches/conditionalize-security-transition-shims.patch b/pkgs/os-specific/darwin/by-name/sy/system_cmds/patches/conditionalize-security-transition-shims.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/system_cmds/patches/conditionalize-security-transition-shims.patch rename to pkgs/os-specific/darwin/by-name/sy/system_cmds/patches/conditionalize-security-transition-shims.patch diff --git a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/meson.build.in b/pkgs/os-specific/darwin/by-name/te/text_cmds/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/text_cmds/meson.build.in rename to pkgs/os-specific/darwin/by-name/te/text_cmds/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/package.nix b/pkgs/os-specific/darwin/by-name/te/text_cmds/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/text_cmds/package.nix rename to pkgs/os-specific/darwin/by-name/te/text_cmds/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/top/meson.build.in b/pkgs/os-specific/darwin/by-name/to/top/meson.build.in similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/top/meson.build.in rename to pkgs/os-specific/darwin/by-name/to/top/meson.build.in diff --git a/pkgs/os-specific/darwin/apple-source-releases/top/package.nix b/pkgs/os-specific/darwin/by-name/to/top/package.nix similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/top/package.nix rename to pkgs/os-specific/darwin/by-name/to/top/package.nix diff --git a/pkgs/os-specific/darwin/apple-source-releases/top/patches/0001-Revert-change-that-dropped-aarch64-support.patch b/pkgs/os-specific/darwin/by-name/to/top/patches/0001-Revert-change-that-dropped-aarch64-support.patch similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/top/patches/0001-Revert-change-that-dropped-aarch64-support.patch rename to pkgs/os-specific/darwin/by-name/to/top/patches/0001-Revert-change-that-dropped-aarch64-support.patch diff --git a/pkgs/os-specific/darwin/trash/default.nix b/pkgs/os-specific/darwin/by-name/tr/trash/package.nix similarity index 100% rename from pkgs/os-specific/darwin/trash/default.nix rename to pkgs/os-specific/darwin/by-name/tr/trash/package.nix diff --git a/pkgs/os-specific/darwin/trash/trash.diff b/pkgs/os-specific/darwin/by-name/tr/trash/trash.diff similarity index 100% rename from pkgs/os-specific/darwin/trash/trash.diff rename to pkgs/os-specific/darwin/by-name/tr/trash/trash.diff diff --git a/pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/package.nix b/pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/package.nix new file mode 100644 index 000000000000..bf975876a07d --- /dev/null +++ b/pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/package.nix @@ -0,0 +1,6 @@ +{ makeSetupHook, pkgsBuildHost }: + +makeSetupHook { + name = "xcode-project-check-hook"; + propagatedBuildInputs = [ pkgsBuildHost.openssl ]; +} ./setup-hook.sh diff --git a/pkgs/os-specific/darwin/xcode-project-check-hook/setup-hook.sh b/pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/setup-hook.sh similarity index 100% rename from pkgs/os-specific/darwin/xcode-project-check-hook/setup-hook.sh rename to pkgs/os-specific/darwin/by-name/xc/xcodeProjectCheckHook/setup-hook.sh diff --git a/pkgs/os-specific/darwin/ghc-standalone-archive/default.nix b/pkgs/os-specific/darwin/ghc-standalone-archive/default.nix deleted file mode 100644 index 28d598a397e2..000000000000 --- a/pkgs/os-specific/darwin/ghc-standalone-archive/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ runCommand, cctools }: -{ - haskellPackages, - src, - deps ? p: [ ], - name, -}: -let - inherit (haskellPackages) ghc ghcWithPackages; - with-env = ghcWithPackages deps; - ghcName = "${ghc.targetPrefix}ghc"; -in -runCommand name - { - buildInputs = [ - with-env - cctools - ]; - } - '' - mkdir -p $out/lib - mkdir -p $out/include - ${ghcName} ${src} -staticlib -outputdir . -o $out/lib/${name}.a -stubdir $out/include - for file in ${ghc}/lib/${ghcName}-${ghc.version}/include/*; do - ln -sv $file $out/include - done - '' diff --git a/pkgs/os-specific/darwin/apple-source-releases/mkAppleDerivation.nix b/pkgs/os-specific/darwin/mk-apple-derivation/default.nix similarity index 88% rename from pkgs/os-specific/darwin/apple-source-releases/mkAppleDerivation.nix rename to pkgs/os-specific/darwin/mk-apple-derivation/default.nix index 9feabef5265d..cb06f5d639c6 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/mkAppleDerivation.nix +++ b/pkgs/os-specific/darwin/mk-apple-derivation/default.nix @@ -12,6 +12,16 @@ in }: let + prependShardPath = + path: + let + shard = lib.toLower (lib.substring 0 2 path); + in + lib.foldl' lib.path.append ../by-name [ + shard + path + ]; + hasBasenamePrefix = prefix: file: lib.hasPrefix prefix (baseNameOf file); in lib.extendMkDerivation { @@ -22,7 +32,7 @@ lib.extendMkDerivation { let inherit (args) releaseName; info = versions.${releaseName}; - files = lib.filesystem.listFilesRecursive (lib.path.append ./. releaseName); + files = lib.filesystem.listFilesRecursive (prependShardPath releaseName); mesonFiles = lib.filter (hasBasenamePrefix "meson") files; in # You have to have at least `meson.build.in` when using xcodeHash to trigger the Meson diff --git a/pkgs/os-specific/darwin/apple-source-releases/update-source-releases.sh b/pkgs/os-specific/darwin/mk-apple-derivation/update-source-releases.sh similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/update-source-releases.sh rename to pkgs/os-specific/darwin/mk-apple-derivation/update-source-releases.sh diff --git a/pkgs/os-specific/darwin/apple-source-releases/versions.json b/pkgs/os-specific/darwin/mk-apple-derivation/versions.json similarity index 100% rename from pkgs/os-specific/darwin/apple-source-releases/versions.json rename to pkgs/os-specific/darwin/mk-apple-derivation/versions.json diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6fee0170889a..38db181c1027 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1560,8 +1560,6 @@ with pkgs; stdenv = clangStdenv; }; - reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace { }; - xcodeenv = callPackage ../development/mobile/xcodeenv { }; androidenv = callPackage ../development/mobile/androidenv { }; @@ -12379,7 +12377,33 @@ with pkgs; hy = with python3Packages; toPythonApplication hy; - ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { }; + ghc-standalone-archive = + { + haskellPackages, + src, + deps ? p: [ ], + name, + }: + let + inherit (haskellPackages) ghc ghcWithPackages; + with-env = ghcWithPackages deps; + ghcName = "${ghc.targetPrefix}ghc"; + in + runCommand name + { + buildInputs = [ + with-env + cctools + ]; + } + '' + mkdir -p $out/lib + mkdir -p $out/include + ${ghcName} ${src} -staticlib -outputdir . -o $out/lib/${name}.a -stubdir $out/include + for file in ${ghc}/lib/${ghcName}-${ghc.version}/include/*; do + ln -sv $file $out/include + done + ''; vdr = callPackage ../applications/video/vdr { }; vdrPlugins = recurseIntoAttrs (callPackage ../applications/video/vdr/plugins.nix { }); diff --git a/pkgs/top-level/darwin-packages.nix b/pkgs/top-level/darwin-packages.nix index 65b9ce2a7db1..36830090754b 100644 --- a/pkgs/top-level/darwin-packages.nix +++ b/pkgs/top-level/darwin-packages.nix @@ -1,21 +1,32 @@ +let + autoCalledPackages = import ./by-name-overlay.nix ../os-specific/darwin/by-name; +in + { lib, - buildPackages, - pkgs, - targetPackages, - libc, - preLibcHeaders, - darwin, + buildEnv, + cctools, generateSplicesForMkScope, + libc, + llvmPackages, makeScopeWithSplicing', + pkgs, + preLibcHeaders, stdenv, + targetPackages, + wrapBintoolsWith, config, }: let aliases = - self: super: - lib.optionalAttrs config.allowAliases (import ../top-level/darwin-aliases.nix lib self super pkgs); + final: prev: + lib.optionalAttrs config.allowAliases (import ../top-level/darwin-aliases.nix lib final prev pkgs); + + autoCalledPackagesWithAliases = lib.composeManyExtensions [ + autoCalledPackages + aliases + ]; mkBootstrapStdenv = stdenv: @@ -32,200 +43,158 @@ in makeScopeWithSplicing' { otherSplices = generateSplicesForMkScope "darwin"; - f = lib.extends aliases ( + extra = self: { + inherit (llvmPackages) clang-unwrapped; + + # This is an internal helper for building source-release packages. + # It’s not intended for use outside of the Darwin package set. + mkAppleDerivation = self.callPackage ../os-specific/darwin/mk-apple-derivation { }; + }; + f = lib.extends autoCalledPackagesWithAliases ( self: - let - inherit (self) mkDerivation callPackage; + lib.recurseIntoAttrs { + inherit (self.adv_cmds) ps; - # Open source packages that are built from source - apple-source-packages = lib.packagesFromDirectoryRecursive { - callPackage = self.callPackage; - directory = ../os-specific/darwin/apple-source-releases; + # Removes propagated packages from the stdenv, so those packages can be built without depending upon themselves. + bootstrapStdenv = mkBootstrapStdenv stdenv; + + # Note: Not in `package.nix` because it messes up the overrides. + binutils = wrapBintoolsWith { + libc = targetPackages.libc or libc; + bintools = self.binutils-unwrapped; }; - in - lib.recurseIntoAttrs ( - apple-source-packages - // { + binutilsNoLibc = wrapBintoolsWith { + libc = targetPackages.preLibcHeaders or preLibcHeaders; + bintools = self.binutils-unwrapped; + }; - inherit (self.adv_cmds) ps; + # x86-64 Darwin gnat-bootstrap emits assembly + # with MOVQ as the mnemonic for quadword interunit moves + # such as `movq %rbp, %xmm0`. + # The clang integrated assembler recognises this as valid, + # but unfortunately the cctools.gas GNU assembler does not; + # it instead uses MOVD as the mnemonic. + # The assembly that a GCC build emits is determined at build time + # and cannot be changed afterwards. + # + # To build GNAT on x86-64 Darwin, therefore, + # we need both the clang _and_ the cctools.gas assemblers to be available: + # the former to build at least the stage1 compiler, + # and the latter at least to be detectable + # as the target for the final compiler. + binutilsDualAs-unwrapped = buildEnv { + name = "${lib.getName self.binutils-unwrapped}-dualas-${lib.getVersion self.binutils-unwrapped}"; + paths = [ + self.binutils-unwrapped + (lib.getOutput "gas" cctools) + ]; + }; - binutils-unwrapped = callPackage ../os-specific/darwin/binutils { - inherit (pkgs) cctools; - inherit (pkgs.llvmPackages) clang-unwrapped llvm llvm-manpages; - }; + binutilsDualAs = self.binutils.override { + bintools = self.binutilsDualAs-unwrapped; + }; - binutils = pkgs.wrapBintoolsWith { - libc = targetPackages.libc or libc; - bintools = self.binutils-unwrapped; - }; + inherit (self.file_cmds) xattr; - # x86-64 Darwin gnat-bootstrap emits assembly - # with MOVQ as the mnemonic for quadword interunit moves - # such as `movq %rbp, %xmm0`. - # The clang integrated assembler recognises this as valid, - # but unfortunately the cctools.gas GNU assembler does not; - # it instead uses MOVD as the mnemonic. - # The assembly that a GCC build emits is determined at build time - # and cannot be changed afterwards. - # - # To build GNAT on x86-64 Darwin, therefore, - # we need both the clang _and_ the cctools.gas assemblers to be available: - # the former to build at least the stage1 compiler, - # and the latter at least to be detectable - # as the target for the final compiler. - binutilsDualAs-unwrapped = pkgs.buildEnv { - name = "${lib.getName self.binutils-unwrapped}-dualas-${lib.getVersion self.binutils-unwrapped}"; - paths = [ - self.binutils-unwrapped - (lib.getOutput "gas" pkgs.cctools) - ]; - }; + # Note: Not in `packages.nix` because it’s a package set not a derivation. + inherit (self.callPackage ../os-specific/darwin/xcode { }) + xcode_8_1 + xcode_8_2 + xcode_9_1 + xcode_9_2 + xcode_9_3 + xcode_9_4 + xcode_9_4_1 + xcode_10_1 + xcode_10_2 + xcode_10_2_1 + xcode_10_3 + xcode_11 + xcode_11_1 + xcode_11_2 + xcode_11_3_1 + xcode_11_4 + xcode_11_5 + xcode_11_6 + xcode_11_7 + xcode_12 + xcode_12_0_1 + xcode_12_1 + xcode_12_2 + xcode_12_3 + xcode_12_4 + xcode_12_5 + xcode_12_5_1 + xcode_13 + xcode_13_1 + xcode_13_2 + xcode_13_3 + xcode_13_3_1 + xcode_13_4 + xcode_13_4_1 + xcode_14 + xcode_14_1 + xcode_15 + xcode_15_0_1 + xcode_15_1 + xcode_15_2 + xcode_15_3 + xcode_15_4 + xcode_16 + xcode_16_1 + xcode_16_2 + xcode_16_3 + xcode_16_4 + xcode_26 + xcode_26_Apple_silicon + xcode_26_0_1 + xcode_26_0_1_Apple_silicon + xcode_26_1 + xcode_26_1_Apple_silicon + xcode_26_1_1 + xcode_26_1_1_Apple_silicon + xcode_26_2 + xcode_26_2_Apple_silicon + xcode_26_3 + xcode_26_3_Apple_silicon + xcode + requireXcode + ; - binutilsDualAs = self.binutils.override { - bintools = self.binutilsDualAs-unwrapped; - }; + # Note: Not in `package.nix` because it references files outside of the package. + # See doc/packages/darwin-builder.section.md + linux-builder = lib.makeOverridable ( + { modules }: + let + toGuest = builtins.replaceStrings [ "darwin" ] [ "linux" ]; - binutilsNoLibc = pkgs.wrapBintoolsWith { - libc = targetPackages.preLibcHeaders or preLibcHeaders; - bintools = self.binutils-unwrapped; - }; + nixos = import ../../nixos { + configuration = { + imports = [ + ../../nixos/modules/profiles/nix-builder-vm.nix + ] + ++ modules; - # Removes propagated packages from the stdenv, so those packages can be built without depending upon themselves. - bootstrapStdenv = mkBootstrapStdenv pkgs.stdenv; + # If you need to override this, consider starting with the right Nixpkgs + # in the first place, ie change `pkgs` in `pkgs.darwin.linux-builder`. + # or if you're creating new wiring that's not `pkgs`-centric, perhaps use the + # macos-builder profile directly. + virtualisation.host = { inherit pkgs; }; - libSystem = callPackage ../os-specific/darwin/libSystem { }; - - DarwinTools = callPackage ../os-specific/darwin/DarwinTools { }; - - libunwind = callPackage ../os-specific/darwin/libunwind { }; - - libcxx = callPackage ../os-specific/darwin/libcxx { }; - - sigtool = callPackage ../os-specific/darwin/sigtool { }; - - signingUtils = callPackage ../os-specific/darwin/signing-utils { }; - - autoSignDarwinBinariesHook = pkgs.makeSetupHook { - name = "auto-sign-darwin-binaries-hook"; - propagatedBuildInputs = [ self.signingUtils ]; - } ../os-specific/darwin/signing-utils/auto-sign-hook.sh; - - iosSdkPkgs = callPackage ../os-specific/darwin/xcode/sdk-pkgs.nix { - buildIosSdk = buildPackages.darwin.iosSdkPkgs.sdk; - targetIosSdkPkgs = (targetPackages.darwin or darwin).iosSdkPkgs; - inherit (pkgs.llvmPackages) clang-unwrapped; - }; - - lsusb = callPackage ../os-specific/darwin/lsusb { }; - - trash = callPackage ../os-specific/darwin/trash { }; - - inherit (self.file_cmds) xattr; - - inherit (pkgs.callPackages ../os-specific/darwin/xcode { }) - xcode_8_1 - xcode_8_2 - xcode_9_1 - xcode_9_2 - xcode_9_3 - xcode_9_4 - xcode_9_4_1 - xcode_10_1 - xcode_10_2 - xcode_10_2_1 - xcode_10_3 - xcode_11 - xcode_11_1 - xcode_11_2 - xcode_11_3_1 - xcode_11_4 - xcode_11_5 - xcode_11_6 - xcode_11_7 - xcode_12 - xcode_12_0_1 - xcode_12_1 - xcode_12_2 - xcode_12_3 - xcode_12_4 - xcode_12_5 - xcode_12_5_1 - xcode_13 - xcode_13_1 - xcode_13_2 - xcode_13_3 - xcode_13_3_1 - xcode_13_4 - xcode_13_4_1 - xcode_14 - xcode_14_1 - xcode_15 - xcode_15_0_1 - xcode_15_1 - xcode_15_2 - xcode_15_3 - xcode_15_4 - xcode_16 - xcode_16_1 - xcode_16_2 - xcode_16_3 - xcode_16_4 - xcode_26 - xcode_26_Apple_silicon - xcode_26_0_1 - xcode_26_0_1_Apple_silicon - xcode_26_1 - xcode_26_1_Apple_silicon - xcode_26_1_1 - xcode_26_1_1_Apple_silicon - xcode_26_2 - xcode_26_2_Apple_silicon - xcode_26_3 - xcode_26_3_Apple_silicon - xcode - requireXcode - ; - - xcodeProjectCheckHook = pkgs.makeSetupHook { - name = "xcode-project-check-hook"; - propagatedBuildInputs = [ pkgs.pkgsBuildHost.openssl ]; - } ../os-specific/darwin/xcode-project-check-hook/setup-hook.sh; - - # See doc/packages/darwin-builder.section.md - linux-builder = lib.makeOverridable ( - { modules }: - let - toGuest = builtins.replaceStrings [ "darwin" ] [ "linux" ]; - - nixos = import ../../nixos { - configuration = { - imports = [ - ../../nixos/modules/profiles/nix-builder-vm.nix - ] - ++ modules; - - # If you need to override this, consider starting with the right Nixpkgs - # in the first place, ie change `pkgs` in `pkgs.darwin.linux-builder`. - # or if you're creating new wiring that's not `pkgs`-centric, perhaps use the - # macos-builder profile directly. - virtualisation.host = { inherit pkgs; }; - - nixpkgs.hostPlatform = lib.mkDefault (toGuest stdenv.hostPlatform.system); - }; - - system = null; + nixpkgs.hostPlatform = lib.mkDefault (toGuest stdenv.hostPlatform.system); }; - in - nixos.config.system.build.macos-builder-installer - ) { modules = [ ]; }; + system = null; + }; - linux-builder-x86_64 = self.linux-builder.override { - modules = [ { nixpkgs.hostPlatform = "x86_64-linux"; } ]; - }; + in + nixos.config.system.build.macos-builder-installer + ) { modules = [ ]; }; - } - ) + linux-builder-x86_64 = self.linux-builder.override { + modules = [ { nixpkgs.hostPlatform = "x86_64-linux"; } ]; + }; + } ); }