-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
darwin.apple_sdk.frameworks.CoreFoundation: drop hook #284629
Conversation
As of NixOS#265102, x86_64-darwin no longer uses the open-source CF release. Since there is no longer a need to switch between implementations, and the hook causes problems with cross-compilation (see NixOS#278348), drop the hook and make both darwin.CF an alias for darwin.apple_sdk.frameworks.CoreFoundation.
After the CoreFoundation hook was dropped, bacula requires the following changes to build on Darwin: * Ensure bacula links CoreFoundation. Override incorrectly failing `configure` tests and add gettext as a build input. Even if those tests pass, bacula only links CoreFoundation when it finds libintl. * Add Kerberos framework. Required to build on x86_64-darwin.
3907d77
to
d25d772
Compare
Sounds like a bit of a risky change to backport to Wouldn't it be safer to backport #284288 and only apply this MR to |
bacula was tested because it was called out in the comments as needing the hook. The actual problem was that its
It would be less risky. If you want to retarget your PR to staging-23.11, I can drop the backport label from this one. |
I dropped the label. I have a flake that builds the Darwin channel blockers plus some other packages that I’ll let run overnight. It going to build ~10k paths (total for both architectures) on top of the ones built already. I’ll report back when it’s done. |
Alright, see #284706. I had to open a new PR because changing the base without updating the branch first caused GitHub to automatically mass-assign code reviewers. |
This is most likely going to get folded into the SDK refactor along with dropping other hooks where possible. |
Closed by #346043 |
Description of changes
As of #265102, x86_64-darwin no longer uses the open-source CF release. Since there is no longer a need to switch between implementations, and the hook causes problems with cross-compilation (see #278348), drop the hook and make both darwin.CF an alias for darwin.apple_sdk.frameworks.CoreFoundation.
Thank you to @szlend for his work on #284288 and @r-burns for identifying the issue in #278348.
Testing was done by confirming the following packages built on aarch64- and x86_64-darwin:
I am targeting this for backporting to fix the cross-compilation issue in 23.11. Since the hook is already not present by default, this change will only affect packages that explicitly use the CoreFoundation framework as a build input.
Fixes #278348
Closes #284288
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.