nixos/modules-closure.sh: don't fail if firmware is missing #109030
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation for this change
Since fdf3215, we no longer allow missing modules in the initrd. Unfortunately atm the modules-closure script also fails on missing firmware, which is a very common case (e.g. xhci-pci.ko.xz lists renesas_usb_fw.mem as dependent firmware). Fix this by only issuing a warning instead.
Theoretically this change could beak things for somebody if they explicitly have
allowMissing
set and rely on the current behavior (that it reports missing firmware as well). I have a hard time imagining such a setup though, so it should be fine I think.Things done
Rebuilding my system from this branch currently. The initrd builds now (the system closure contains gpgme, which has other issues currently, so I did not boot from this yet).
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)