Skip to content

release-cross: replace x86_64-darwin with aarch64-darwin#361521

Merged
Artturin merged 1 commit intoNixOS:stagingfrom
szlend:release-cross-aarch64-darwin
Dec 12, 2024
Merged

release-cross: replace x86_64-darwin with aarch64-darwin#361521
Artturin merged 1 commit intoNixOS:stagingfrom
szlend:release-cross-aarch64-darwin

Conversation

@szlend
Copy link
Member

@szlend szlend commented Dec 3, 2024

I propose trading x86_64-darwin for aarch64-darwin as the main darwin cross-compiling build platform. ARM Macs have been introduced in 2020 and the last Intel MacBooks have been discontinued in 2023 so I think most people would find aarch64-darwin more useful here.

See #284465

I guess the main question here is whether the aarch64-darwin builders are numerous enough to support this without slowing down native builds too much (relative to x86_64-darwin).

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added the 8.has: documentation This PR adds or changes documentation label Dec 3, 2024
@nix-owners nix-owners bot requested a review from Ericson2314 December 3, 2024 18:49
@winterqt winterqt requested a review from a team December 3, 2024 18:53
@szlend
Copy link
Member Author

szlend commented Dec 3, 2024

I guess the main question here is whether the aarch64-darwin builders are numerous enough to support this without slowing down native builds too much (relative to x86_64-darwin).

From Matrix:

Winter: x86_64-darwin = aarch64-darwin with Rosetta for the sake of our infra

So this would actually put some load off of darwin builders, which is a nice side benefit.

@ofborg ofborg bot added 6.topic: cross-compilation Building packages on a different platform than they will be used on 6.topic: darwin Running or building packages on Darwin 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Dec 4, 2024
@dwt
Copy link
Contributor

dwt commented Dec 12, 2024

This looks lovely, as it would make cross compilation from arm-darwin much faster.

@Artturin Artturin merged commit a349287 into NixOS:staging Dec 12, 2024
@dwt
Copy link
Contributor

dwt commented Dec 13, 2024

How about the documentation of Nixpkgs? I know of that thing, but there are probably more places?

wolfgangwalther pushed a commit that referenced this pull request Apr 23, 2025
in #361521 this was changed to
aarch64-darwin.
mkg20001 pushed a commit to mkg20001/nixpkgs that referenced this pull request Apr 29, 2025
in NixOS#361521 this was changed to
aarch64-darwin.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: cross-compilation Building packages on a different platform than they will be used on 6.topic: darwin Running or building packages on Darwin 8.has: documentation This PR adds or changes documentation 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants