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

linux: remove dependency to utillinuxMinimal #97294

Merged
merged 1 commit into from Sep 6, 2020

Conversation

oxalica
Copy link
Contributor

@oxalica oxalica commented Sep 6, 2020

Motivation for this change

Try to fix #65363

Kernel docs listed utillinux under section System utilities instead of Kernel compilation. So utillinux (or utillinuxMinimal) should not be a build dependency of kernel image.

Current linux (5.4.59) can be built successfully without utillinuxMinimal. The output bzImage has exact the same size as before (4,786,560 B), but with some bytes differs. Not sure why it changes.

@flokli Does PR trigger build tests over all dependent paths? It's such a mass build for myself.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • linux
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@oxalica
Copy link
Contributor Author

oxalica commented Sep 6, 2020

Tested to build my system configuration on nixos-unstable (c59ea8b) with this patch.
Everything is fine.

@flokli
Copy link
Contributor

flokli commented Sep 6, 2020

I ran some kernel builds:

nix-build -A linux_4_4 -A linux_4_9 -A linux_4_14 -A linux_4_19 -A linux_5_4 -A linux_5_7 -A linux_5_8 --keep-going

Which succeeded on master.

I cherry-picked in your commit, and the following failed:

error: build of '/nix/store/4ddp22vh6gmwq2zqq19qaybicbpshvx8-linux-5.8.6.drv', '/nix/store/hl05awby1s71pb4655rn7y7m90c6h0sw-linux-5.4.62.drv', '/nix/store/vcw0hg26y2qmdz7g5d1vbxnw9575d0xr-linux-4.19.143.drv' failed

I assume some utillinux is indeed necessary for some kernel versions. We can't drop it unconditionally.

@oxalica
Copy link
Contributor Author

oxalica commented Sep 6, 2020

@flokli Can you provide build logs?

I cherry-picked this patch commit to current master a5121f7 and ran nix build -f . linux_5_4 -L on it. (Check this branch)
But it is built successfully for me. 🤔
Note that the drv path is /nix/store/i0w2ilazzg6s47kpxn65h1k086wim68h-linux-5.4.62.drv, which differs from yours.

My system info:

 - system: `"x86_64-linux"`
 - host os: `Linux 5.4.59, NixOS, 20.09.git.3554c9be595 (Nightingale)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.7`
 - channels(root): `"nixos-20.09pre239318.c59ea8b8a0e"`
 - channels(oxa): `"home-manager, mozilla"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Overlays: only nixpkgs-mozilla

@flokli
Copy link
Contributor

flokli commented Sep 6, 2020

This was d704694 with your commit cherry-picked.

I just checked the build logs - it seems I ran into some "No space left on device" situations - maybe due too much parallelism while building all kernels at once 😆

I kicked another build, this time building the remaining kernels not in parallel and was successfully able to build all of

nix-build -A linux_4_4 -A linux_4_9 -A linux_4_14 -A linux_4_19 -A linux_5_4 -A linux_5_7 -A linux_5_8 --keep-going

So this seems to be indeed fine 🎉

@flokli flokli merged commit b85325a into NixOS:staging Sep 6, 2020
@oxalica oxalica deleted the linux-no-utillinux branch September 7, 2020 12:02
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

2 participants