-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
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
nix busybox shell: fix config and enable expected features #34628
nix busybox shell: fix config and enable expected features #34628
Conversation
@dezgeg (and anyone else): this shell has resolved all of the build failures (and annoying extra newlines in "configure" output haha) that I've seen. Please LMK if you find any others! Hopefully this matter is resolved 👍. |
Matches changes made in nixpkgs: NixOS/nixpkgs#34628
@dtzWill The busybox shell build now fails with:
|
So you need to build it with an old Nix which lacks the busybox thing completely then? :P |
Yes, that's not the fault of this PR but rather the underlying problem this fixes. (And the awkwardness of even getting back to a good state once you start using the limited busybox shell is part of why I was so eager to see this fixed) |
Got this:
|
@dezgeg details? Sounds like you're running into the sort of problem that motivated this, see the start of a table I made about failures encountered in packages: NixOS/nix#1832 (comment) Good news is some amount of latest-all-the-things should fix things for you. |
Ah, I see it's already in that table. This was on the community aarch64 box and I was under the impression that Nix already got updated once but apparently still not new enough. It's running |
That's new enough but I think NixOS needs to be equally new.... Anyway, I can confirm the busybox on the aarch64 community builder isn't fixed yet: $ nix-store -q --references $(which nix)|grep busy
/nix/store/mrbj338a1j2y712mgkyis9v4gpcd5qk7-busybox-1.28.0
[dtz@nixos:~]$ nix log /nix/store/mrbj338a1j2y712mgkyis9v4gpcd5qk7-busybox-1.28.0|grep GETOPT
[0.0 MiB DL]
getopt (5.6 kb) (GETOPT) [Y/n/?] (NEW) n
getopts builtin (ASH_GETOPTS) [Y/n] (NEW) n
getopt (5.6 kb) (GETOPT) [N/y/?] n
getopts builtin (ASH_GETOPTS) [N/y] n
getopt (5.6 kb) (GETOPT) [N/y/?] n
getopts builtin (ASH_GETOPTS) [N/y] n
[dtz@nixos:~]$ vs locally (fixed): $ nix log $(nix-store -q --references $(which nix)|grep busy)|grep GETOPT
getopt (5.6 kb) (GETOPT) [Y/n/?] (NEW) n
getopts builtin (ASH_GETOPTS) [Y/n] (NEW) n
getopt (5.6 kb) (GETOPT) [N/y/?] n
getopts builtin (ASH_GETOPTS) [N/y] n
parseconfig: removing CONFIG_ASH_GETOPTS
parseconfig: setting CONFIG_ASH_GETOPTS=y
getopt (5.6 kb) (GETOPT) [N/y/?] n
getopts builtin (ASH_GETOPTS) [Y/n] y (these commands are a bit brittle but hopefully you get the idea :)) |
Fixes known build failures stemming from /bin/sh not
having expected features.
Most of these are enabling POSIX features, but not all.
Resulting busybox grows from 120K -> 140K which seems reasonable.
build-use-sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)