[Nix-dev] How to replace a standard kernel module with a newer version?
Eelco Dolstra
e.dolstra at tudelft.nl
Thu Sep 15 20:05:52 CEST 2011
Hi,
On 09/15/2011 06:33 PM, Peter Simons wrote:
> the standard Linux kernel has a module e1000e. Unfortunately, that
> module is too old for my network card, so I need to use the new version
> which is packaged in "linuxPackages.e1000e". Now, I assumed that setting
>
> boot.extraModulePackages = [ config.boot.kernelPackages.e1000e ];
>
> in configuration.nix would do the trick, but of course the build
> complains about a file collision:
>
> collision between
> `/nix/store/0ia6qcpww8sja79hc9rfcxq4cim356bb-e1000e-1.5.1/lib/modules/2.6.38.8/kernel/drivers/net/e1000e/e1000e.ko'
> and
> `/nix/store/s9mhjmacl0grg9qndyr0xy1lfc46ww3f-linux-2.6.38.8/lib/modules/2.6.38.8/kernel/drivers/net/e1000e/e1000e.ko'
> at /nix/store/1pwj1c26h0vi5w535iw2ipd26zd6k6hq-builder.pl line 72.
>
> Does anyone have an idea how I might remedy that issue?
Try setting/adding the attribute ‘ignoreCollisions = true’ in the call
to buildEnv in
nixpkgs/pkgs/os-specific/linux/module-init-tools/aggregator.nix. You'll
probably need to change the order in which module packages are processed
too.
--
Eelco Dolstra | http://www.st.ewi.tudelft.nl/~dolstra/
More information about the nix-dev
mailing list