apple-sdk.privateFrameworksHook: drop; apple-sdk: don’t bundle various bintools#377168
Draft
emilazy wants to merge 7 commits intoNixOS:stagingfrom
Draft
apple-sdk.privateFrameworksHook: drop; apple-sdk: don’t bundle various bintools#377168emilazy wants to merge 7 commits intoNixOS:stagingfrom
emilazy wants to merge 7 commits intoNixOS:stagingfrom
Conversation
13 tasks
57c5b39 to
7994dc3
Compare
reckenrode
reviewed
Jan 27, 2025
Contributor
There was a problem hiding this comment.
Why is the APFS framework being removed?
Member
Author
There was a problem hiding this comment.
It doesn’t seem to link any symbols, and apparently doesn’t even need anything from the headers:
https://github.com/NixOS/nixpkgs/blob/7994dc3c35ca1815902ec868b96036261725b865/pkgs/os-specific/darwin/apple-source-releases/diskdev_cmds/package.nix#L31-L33
As far as I can tell from the source, all the direct APFS API calls are guarded behind iOS conditionals. No point doing the private framework linking dance for programs that don’t use them. We could probably even just add the appropriate #ifs to their #includes instead.
This isn’t required. The build system sets up the necessary path and they have their own reverse‐engineered declarations.
The Makefile works fine as long as you specify the old C++ standard and tell it that SkyLight is there. (Actually, it can find SkyLight all by itself, even inside the sandbox, but this guards against hypothetical future sandbox tightening and cross‐compilation scenarios…)
Best not to mix reverse‐engineered headers that only Apple source releases need and the upstream SDK, and a framework search path isn’t really worth abstracting away in a hook.
7994dc3 to
15f314b
Compare
15f314b to
c21fd53
Compare
These aren’t present in the bootstrap tools, and it seems better to fix (or hack around) in Chromium builds and so on than adding conditionals to this compatibility hack. Hopefully I won’t regret trying this…
This should no longer be necessary. This reverts commit 9cdac5f.
c21fd53 to
60db060
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In combination with #377162, should hopefully fix
stdenvafter #370750. Testing the build now. Not 100% confident in the last commit but this is what I have for now.Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-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.