Skip to content
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/setup.sh: undo local -n change #27618

Merged
merged 1 commit into from Jul 24, 2017
Merged

Conversation

copumpkin
Copy link
Member

@copumpkin copumpkin commented Jul 24, 2017

local -n is theoretically better than the eval solution this is adding back, but until we can rely on a particular version of bash in nix-shell, this just breaks too much stuff.

See NixOS/nix@c94f3d5 and NixOS/nix#1483 for the better long-term solution.

Motivation for this change

macOS and CentOS (among probably others) have nix-shell broken by default right now. Until nixpkgs-unstable gets rid of local -n, this will cause (and is causing) a ton of pain. I'm doing this directly against master because I want to get a successful Hydra build to bump nixpkgs-unstable back to a good state ASAP.

We'll also need to do this to other local -n instances on staging

It's better than the eval solution this is adding back, but until we can
rely on a particular version of bash in nix-shell, this just breaks too
much stuff.

See NixOS/nix@c94f3d5
and NixOS/nix#1483 for the better long-term
solution.
Copy link
Member

@Ericson2314 Ericson2314 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I may yet be tempted to do my aweful

bar="foo[@]"
baz=${!bar}

hack. But I'll do it on staging :).

@copumpkin
Copy link
Member Author

Cool, I'm inclined to stick to the tried and tested until the storm passes 😄 but if you can make sure it works on CentOS and macOS, I'm happy either way. I'm running a macOS and CentOS build right now.

@Ericson2314
Copy link
Member

Ericson2314 commented Jul 24, 2017

@copumpkin Yeah, since this is straight-to-master, it makes complete sense to be conservative. In my earlier reversion PR for printLines, I could have also changed things for style (make a printWords), but chose not to.

Ericson2314 referenced this pull request Jul 24, 2017
As @oxij points out in [1], this breakage is especially serious because
it changes the contents of built environments without a corresonding
change in their hashes. Also, the revert is easier than I thought.

This reverts commit 3cb745d.

[1]: #27427 (comment)
@copumpkin
Copy link
Member Author

Okay, CentOS and macOS both work with this PR merged.

@domenkozar
Copy link
Member

domenkozar commented Jul 24, 2017

I'm going to merge this and cancel the rest of the master builds. Should get us a channel update in ~1 day

@domenkozar domenkozar merged commit 838a6b7 into NixOS:master Jul 24, 2017
@FRidh
Copy link
Member

FRidh commented Jul 25, 2017

@copumpkin @Ericson2314 can you merge master back into staging. The current staging builds are pretty useless and best be halted.

@Ericson2314
Copy link
Member

I started working on that. But staging was completely broken on Darwin (couldn't even build stdenv, so not my changes).

@FRidh
Copy link
Member

FRidh commented Jul 26, 2017

@copumpkin @Ericson2314 how come Darwin is broken on staging and who is fixing this? Not having these changes in staging blocks staging and thereby us from merging any other mass-rebuilds.

edit: so that's #27650

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants