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 stdenv tweaks #43040
Darwin stdenv tweaks #43040
Conversation
This was broken & apparently unused.
It’s not a good idea to rely on apple’s sdk for such a core library in Nixpkgs. I have made a patch to libuv to make these frameworks optional. There is also a pull request here: libuv/libuv#1909
I want these tests to run because libuv is very important to lots of things in Nixpkgs. I have a very large list of tests to disable for now just to be on the safe side. For the record this is definitely a libuv issue - their tests should be robust - but this is a safety precaution for now.
As requested by @domenkozar
Success on x86_64-linux (full log) Attempted: libuv The following builds were skipped because they don't evaluate on x86_64-linux: darwin.security_tool Partial log (click to expand)
|
Failure on aarch64-linux (full log) Attempted: libuv The following builds were skipped because they don't evaluate on aarch64-linux: darwin.security_tool Partial log (click to expand)
|
tdRegexp = lib.concatStringsSep "\\|" toDisable; | ||
in lib.optionalString doCheck '' | ||
sed '/${tdRegexp}/d' -i test/test-list.h | ||
''; | ||
|
||
nativeBuildInputs = [ automake autoconf libtool pkgconfig ]; | ||
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices CoreServices ]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
# For now the tests are just breaking large swaths of the nixpkgs binary cache for Darwin, | ||
# and I'd rather have everything else work at all than have stronger assurance here. | ||
doCheck = !stdenv.isDarwin; | ||
doCheck = true; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also prefer to run them, but dealing with the intermittent failures on hydra is really painful particularly for staging. Let's keep an eye on it, let's hope we can get rid of them like this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes - it's very weird that it fails so frequently. FWIW it's not just libuv that has issues on macOS with network failures. Could it be a kernel thing? Or maybe it's just no one else runs automated tests on macOS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wish we could just drop libuv from cmake altogether - but apparently cmake doesn't support that for some weird reason.
@@ -0,0 +1,176 @@ | |||
From 6d03644817fb263489dc9fdf550bf1fac274fd8f Mon Sep 17 00:00:00 2001 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd fatchpatch this.
Failure on x86_64-darwin (full log) Attempted: darwin.security_tool, libuv Partial log (click to expand)
|
@matthewbauer any number of this reduction to get an impression? |
8b53aa0
to
30347ef
Compare
30347ef
to
6202380
Compare
@periklis Sorry my title was a little misleading - these aren't reducing anything currently just preventing the SDK from getting in some places where it shouldn't be. |
Success on x86_64-linux (full log) Attempted: libuv The following builds were skipped because they don't evaluate on x86_64-linux: darwin.security_tool Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: libuv The following builds were skipped because they don't evaluate on aarch64-linux: darwin.security_tool Partial log (click to expand)
|
Failure on x86_64-darwin (full log) Attempted: darwin.security_tool, libuv Partial log (click to expand)
|
Motivation for this change
Also some miscellaneous tweaks.