From 9845e6ec5c9dd9dbc3d692e4c62f6c86a0b4dad7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 9 Aug 2013 17:55:45 +0200 Subject: Kernel module aggregator: Use kmod instead of module-init-tools --- pkgs/os-specific/linux/kmod/aggregator.nix | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 pkgs/os-specific/linux/kmod/aggregator.nix (limited to 'pkgs/os-specific/linux/kmod/aggregator.nix') diff --git a/pkgs/os-specific/linux/kmod/aggregator.nix b/pkgs/os-specific/linux/kmod/aggregator.nix new file mode 100644 index 00000000000..161af38ff60 --- /dev/null +++ b/pkgs/os-specific/linux/kmod/aggregator.nix @@ -0,0 +1,27 @@ +{ stdenv, kmod, modules, buildEnv }: + +buildEnv { + name = "kernel-modules"; + + paths = modules; + + postBuild = + '' + source ${stdenv}/setup + + kernelVersion=$(cd $out/lib/modules && ls -d *) + if test "$(echo $kernelVersion | wc -w)" != 1; then + echo "inconsistent kernel versions: $kernelVersion" + exit 1 + fi + + echo "kernel version is $kernelVersion" + + # Regenerate the depmod map files. Be sure to pass an explicit + # kernel version number, otherwise depmod will use `uname -r'. + if test -w $out/lib/modules/$kernelVersion; then + rm -f $out/lib/modules/$kernelVersion/modules.* + ${kmod}/sbin/depmod -b $out -a $kernelVersion + fi + ''; +} -- cgit 1.4.1