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: change texinfo bootstrap handling; texinfo, bash: simplify expressions #39457
Conversation
/cc @Ericson2314 |
Looks okay to me. I assume 4.13a doesn't work with common.nix? One concern I have with the "generic" style is that it's not always clear how to add stuff to them. For instance, what do we do when we want to add a known vulnerability or mark as broken a specific version of texinfo? I think overrideAttrs would probably work as well as adding an optional argument to common.nix but it's not exactly obvious how to do it. I had to do this with Mono recently and still not sure whether it was the right way to go about it: https://github.com/NixOS/nixpkgs/pull/39344/files Definitely not a reason not to merge this because it's used elsewhere - just a concern with this style. |
Success on x86_64-linux (full log) Attempted: bash, stdenv, texinfo Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: bash, stdenv, texinfo Partial log (click to expand)
|
Yes, the older texinfo is a bit too different to be merged with this expression and I didn't want to make `common.nix` complicated.
I agree that merging for the sake of merging is not useful, but then expressions almost coincide and you frequently have to update all of them at once I think it's worth merging them.
I think overrideAttrs would probably work as well as adding an optional argument to common.nix but
You can also inspect the version in common.nix. E.g.
```
{
inherit version;
name = "name-${version}";
meta = {
knownVulnerabilities = lib.versionOlder version whatever ["CVE-whatever" ];
}
}
```
But I do feel that `overrideAttrs` is preferrable for stuff like that, since its very version-specefic.
|
This makes stdenv bootstraping a bit more efficient. We don't recompile most of other stuff used in bootstrapping stdenv too.
Also add me as a maintainer.
1c0b741
to
d531a1e
Compare
Failure on aarch64-linux (full log) Attempted: bash, stdenv, texinfo Partial log (click to expand)
|
The build on arch times out. |
Failure on x86_64-linux (full log) Attempted: bash, stdenv, texinfo Partial log (click to expand)
|
While building the container there are a few occasions where stdenvNoCC is used underneath. During the last staging merge, some change now tries to build texinfo during the test while building stdenvNoCC. With this change, I'm adding stdenvNoCC to the closure to make sure that even when we have future stdenv changes, it doesn't break (well, except if we do have another variation like stdenvNoCC that overrides stdenv). I haven't bisected the exact change, but I'd suspect that it could be one of the commits in #39457. This fixes the test and it no longer fails with the following error: error: unable to download 'http://ftpmirror.gnu.org/texinfo/texinfo-6.5.tar.xz': Couldn't resolve host name (6) builder for '/nix/store/r7sf1wjbnimwgnv276jh59nfnzw40x30-texinfo-6.5.tar.xz.drv' failed with exit code 1 cannot build derivation '/nix/store/5w1pv788ayi1wahyy76i90yqv96ai4h5-texinfo-6.5.drv': 1 dependencies couldn't be built cannot build derivation '/nix/store/cnsfkf0j5xmm14zzm5a3a66pz66gbc82-stdenv-linux.drv': 1 dependencies couldn't be built cannot build derivation '/nix/store/11kkhk57ic8kfd7g197sqwgd0pzqfjhl-nixos-system-foo-0-18.09pre-git.drv': 1 dependencies couldn't be built error: build of '/nix/store/11kkhk57ic8kfd7g197sqwgd0pzqfjhl-nixos-system-foo-0-18.09pre-git.drv' failed /run/current-system/sw/bin/nixos-container: failed to build initial container configuration Signed-off-by: aszlig <aszlig@nix.build> Cc: @aristidb, @edolstra, @chaoflow, @kampfschlaefer
this results in the main |
I can confirm. That's unfortunate. Reverting a809fdc fixes it, but it's a mass-rebuild.
|
@cleverca22 Please try #44932, I think it fixes it, but still saves one texinfo rebuild.
|
Motivation for this change
Things done