2024-05-02 00:46:19 +00:00
|
|
|
# Given a kernel build (with modules in $kernel/lib/modules/VERSION),
|
|
|
|
# produce a module tree in $out/lib/modules/VERSION that contains only
|
|
|
|
# the modules identified by `rootModules', plus their dependencies.
|
|
|
|
# Also generate an appropriate modules.dep.
|
|
|
|
|
2024-06-30 08:16:52 +00:00
|
|
|
{
|
|
|
|
stdenvNoCC,
|
|
|
|
kernel,
|
|
|
|
firmware,
|
|
|
|
nukeReferences,
|
|
|
|
rootModules,
|
|
|
|
kmod,
|
|
|
|
allowMissing ? false,
|
|
|
|
}:
|
2024-05-02 00:46:19 +00:00
|
|
|
|
|
|
|
stdenvNoCC.mkDerivation {
|
|
|
|
name = kernel.name + "-shrunk";
|
|
|
|
builder = ./modules-closure.sh;
|
2024-06-30 08:16:52 +00:00
|
|
|
nativeBuildInputs = [
|
|
|
|
nukeReferences
|
|
|
|
kmod
|
|
|
|
];
|
|
|
|
inherit
|
|
|
|
kernel
|
|
|
|
firmware
|
|
|
|
rootModules
|
|
|
|
allowMissing
|
|
|
|
;
|
|
|
|
allowedReferences = [ "out" ];
|
2024-05-02 00:46:19 +00:00
|
|
|
}
|