-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
stdenv: delete the NIX_COREFOUNDATION_RPATH sledgehammer #226048
Conversation
In a similar vein as PR NixOS#226048 this hack doesn't seem necessary anymore and introduces build differences across linux/darwin.
Afraid I know nothing about native builds or macos frameworks. Let's ask @NixOS/darwin-maintainers |
I think this warrants a Hydra jobset. |
I agree this PR needs wide testing before merging. What's the procedure for a hydra test run? |
Paging @vcunat, can we get a jobset? :) |
See also #111385 |
Risky changes to core packages are not allowed now. I don't know darwin stuff really, but at least it's my understanding that this PR can't be merged for 23.05 anymore, according to the schedule: #223562 So perhaps wait a couple of weeks? Either way, for the jobset it's better to put the tested commits atop some nixpkgs version that's known to be OK-ish (e.g. master), so that it doesn't mix failures coming from various sources. For example, even |
2fee14d
to
d33312f
Compare
d33312f
to
696c2b9
Compare
I don't mind waiting a month to get this merged, but I'd like to shake out problems with the PR before that. As you can tell from the PR description and commit, I'm surprised this change works at all. So my goal with wider testing is to pinpoint the need for
For merging, no problem.
Rebased to master. |
OK, so let's do just aarch64-darwin in the first step, I guess: https://hydra.nixos.org/eval/1793921?compare=1793915 |
Thank you. I'm unsure how to interpret the results: there are thousands of "newly failing" jobs, but they seem to be timeouts. I used "compare to..." to compare with "aarch64-darwin", giving me https://hydra.nixos.org/eval/1793921?compare=aarch64-darwin&full=0 The result is 130 "newly failing", but the few I sampled were also timeouts. |
@eliasnaur, you should compare to an evaluation of the specific commit you based your changes on. If you base a branch on master you'll sift through evaluation of nixpkgs:trunk to find that. And yes, sampling a couple failures is pretty much what you do and then follow the propagated from links usually. I'm not sure how expected the timeouts are or what to do about them. Due to the PR veprbl linked I'm unsure whether we would actually see failures from this change. I think it might just link to system frameworks impurely? |
That's the link I posted. Such timeouts are normal. The darwin builders are just less reliable than linux ones 🤷🏽 But this time it was unlucky to happen during stdenv bootstrapping, so everything got failed. I'll make sure it gets built and then restart everything. |
Uh, another unexplained timeout causing mass failure, another restart of everything. Well, just ping me if it repeats. |
Similar to PR NixOS#223861 and the issue NixOS#221350, NIX_COREFOUNDATION_RPATH is set unconditionally in the darwin stdenv. This is wrong for cross- compiles and results in `rpaths` depending on the builder platform. This change makes another bold move and deletes the NIX_COREFOUNDATION_RPATH facility completely, in the hope it is no longer needed, or that any breakage is manageable. As an added bonus we can delete a darwin specific hack in glibc.
696c2b9
to
4f103fb
Compare
I rebuilt a handful of the "newly failing" python packages and My reference: https://hydra.nixos.org/eval/1793921?compare=1793915#tabs-now-fail |
Normally jobsets are evaluated on a schedule and when there's changes to the branch a full evaluation gets run. So an evaluation should be triggered eventually. The only way to speed that up is by getting the jobset owner to do so manually. |
Thanks. I don't mind waiting. |
Well, I could've restarted the failures, but your push makes everything rebuild from scratch (even successes). |
Yes, I see that now. Sorry for exposing you to my learning curve.
For some reason I didn't see this comment before, or I didn't understand its implications. Indeed, it does seem that @veprbl's #111385 is a better PR. I shall close this for now and push forward in that PR. |
Similar to PR #223861 and the issue #221350, NIX_COREFOUNDATION_RPATH is set unconditionally in the darwin stdenv. This is wrong for cross-compiles and results in
rpaths
depending on the builder platform.This change makes another bold move and deletes the NIX_COREFOUNDATION_RPATH facility completely, in the hope it is no longer needed, or that any breakage is manageable.
As an added bonus we can delete a darwin specific hack in glibc.
Description of changes
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)