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
Make hash-breaking cleanups avoided in #26007 #26881
Conversation
What kind of prefix is |
286b612
to
75bfc10
Compare
@FRidh Added some comments for that. |
@@ -17,7 +16,7 @@ stdenv.mkDerivation rec { | |||
sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1"; | |||
}; | |||
|
|||
postPatch = stdenv.lib.optionalString stdenv.isDarwin '' | |||
postPatch = stdenv.lib.optionalString hostPlatform.isDarwin '' | |||
substituteInPlace configure \ | |||
--replace '/usr/bin/libtool' 'ar' \ |
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.
An impurity like /usr/bin/ seems worth patching out regardless of the platform, right?
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.
Then again, you aren't really changing this logic here, so I guess it's not worth fixing here.
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.
@copumpkin you're looking at the person that just ran `s/stdenv.is/hostPlatform.is/g' :D.
In seriousness, looks like libtool
is being replaced with ar
, which is kind of sketchy? I'd guess:
libtool
should continue to be used where possible, though certainly not impurelyar
should be replaced with$AR
- Is this impurity still there upstream? The Linux build doesn't fail with sandboxing at least, and I doubt the e.g. homebrew people want that hard-coded.
Hydra seems to not want to evaluate the job? |
cfef6d4
to
c33e29f
Compare
At least the cross tests still work, which ends up needing the guts of the mass rebuild just fine. Native coreutils has this test https://github.com/coreutils/coreutils/blob/master/tests/install/install-C.sh fails for some reason, however:
|
4053af1
to
6875845
Compare
coreutils built after rebuild now. |
46bc85d
to
5b766ba
Compare
PR NixOS#26007 used these to avoid causing a mass rebuild. Now that we know things work, we do that to clean up.
5b766ba
to
95c8277
Compare
hydra.nixos.org kept on timing out, but I built the Travis commands locally on both Linux and Darwin, which should build all changed platforms. so merging to staging. |
Motivation for this change
PR #26007 used these to avoid causing a mass rebuild. Now that we know things work, I'm doing a cleanup of all the individual derivations. Beyond tidiness for tidiness's sake, I think this is very important because people write packages by copying existing packages, so it's important to demonstrate the intended idem.
Some of the core infrastructure also needs a cleanup, but I'm leaving that in #26805 as it will take more effort to get correct
Things done
mass rebuild tests: http://hydra.nixos.org/jobset/nixpkgs/ericson2314-cross-staging
cross tests: http://hydra.nixos.org/jobset/nixpkgs/ericson2314-cross-scratch
CC @Dridus @copumpkin