stdenv: add uutils-coreutils stdenv#116274
Conversation
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: |
|
Is it ...practical? |
The single binary is much smaller and when rust supports lining to shared find it will be reduced even further. uutils/coreutils#747 |
3fea5fc to
0570034
Compare
8f1b0e3 to
a898f81
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
siraben
left a comment
There was a problem hiding this comment.
Changing the hash (temporary workaround) GNU Hello compiles and runs:
$ nix-build --show-trace -E 'with import ./. { }; hello.override { stdenv = stdenvUutilsCoreutils; }' && ./result/bin/hello
[nix-shell:~/nixpkgs]$ nix-build --show-trace -E 'with import ./. { }; hello.override { stdenv = stdenvUutilsCoreutils; }' && ./result/bin/hello
/nix/store/jxklig35p42bxhp9yzk0gkgz2d5i8vml-hello-2.10
Hello, world!|
Checked as of 2021-06-16
Detailsshrinking RPATHs of ELF executables and libraries in /nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17
shrinking /nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17/bin/ed
gzipping man pages under /nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17/share/man/
strip is /nix/store/b8y61srrw1m2n87dr5snfaxy0rqgk6qy-binutils-2.35.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17/bin
patching script interpreter paths in /nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17
/nix/store/19n3pm10rr79445054shvid8m49mab43-ed-1.17/bin/red: interpreter directive changed from "#! /bin/sh" to "/nix/store/3xqkrab9zqpv91bw1xp8551sjk7qrc34-bash-4.4-p23/bin/sh"
thread 'main' panicked at 'Unable to parse date
Invalid day.', src/uu/touch/src/touch.rs:248:19
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
builder for '/nix/store/yh6a7878qfg3qqi24mk61jaax47y2jpa-ed-1.17.drv' failed with exit code 101
error: build of '/nix/store/yh6a7878qfg3qqi24mk61jaax47y2jpa-ed-1.17.drv' failed
Detailsthese derivations will be built:
/nix/store/7wna7whwryrrmsm6fpf02sqpsaw4jpv9-vim-8.2.2567.drv
building '/nix/store/7wna7whwryrrmsm6fpf02sqpsaw4jpv9-vim-8.2.2567.drv'...
unpacking sources
unpacking source archive /nix/store/dvh1x2m7gvp1iv5jjlvrf5ry5g3ay23k-source
cp: error: '/nix/store/dvh1x2m7gvp1iv5jjlvrf5ry5g3ay23k-source/src/normal.c' -> 'source/src/normal.c': Too many open files (os error 24)
do not know how to unpack source archive /nix/store/dvh1x2m7gvp1iv5jjlvrf5ry5g3ay23k-source
builder for '/nix/store/7wna7whwryrrmsm6fpf02sqpsaw4jpv9-vim-8.2.2567.drv' failed with exit code 1
error: build of '/nix/store/7wna7whwryrrmsm6fpf02sqpsaw4jpv9-vim-8.2.2567.drv' failedCompiling other packages with the uutils-based stdenv:
|
|
Unfortunately it will take some digging to figure out exactly what went wrong in the builds that failed, so that upstream has a clear view on what incompatibilities they need to address. |
Merge conflict with the treewide nixfmt :P |
|
I still would love to see this merged, it does not conflict with the main package set and can enable robustness checking of packages/NixOS itself. |
8cf07c7 to
bd4460e
Compare
|
Evaluation failing: |
bd4460e to
b939123
Compare
b939123 to
4e1dc66
Compare
siraben
left a comment
There was a problem hiding this comment.
Approved, pending CI passes. Let's get this in so it's maintained instead of continuously rebased.
4e1dc66 to
bace9f3
Compare
|
Lets at least get the formatting action to pass, otherwise other PRs might be impacted by that. |
|
|
@SuperSandro2000 please retarget staging, looks like it causes mass rebuilds due to the autoconf change. |
To try this use the pkgsUutils overlay and replace python3 with any package:
ToDo:
Issues preventing us from using it in a stdenv:
No such file or directoryuutils/coreutils#2335[make with MULTICALL is missing symlink from test to [ uutils/coreutils#2420Motivation for this change
Things done
sandboxinnix.confon non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"./result/bin/)nix path-info -Sbefore and after)