Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 40 lines 919 B view raw
1{ 2 stdenvNoCC, 3 kmod, 4 modules, 5 buildEnv, 6 name ? "kernel-modules", 7}: 8 9buildEnv { 10 inherit name; 11 12 paths = modules; 13 14 postBuild = '' 15 source ${stdenvNoCC}/setup 16 17 if ! test -d "$out/lib/modules"; then 18 echo "No modules found." 19 # To support a kernel without modules 20 exit 0 21 fi 22 23 kernelVersion=$(cd $out/lib/modules && ls -d *) 24 if test "$(echo $kernelVersion | wc -w)" != 1; then 25 echo "inconsistent kernel versions: $kernelVersion" 26 exit 1 27 fi 28 29 echo "kernel version is $kernelVersion" 30 31 shopt -s extglob 32 33 # Regenerate the depmod map files. Be sure to pass an explicit 34 # kernel version number, otherwise depmod will use `uname -r'. 35 if test -w $out/lib/modules/$kernelVersion; then 36 rm -f $out/lib/modules/$kernelVersion/modules.!(builtin*|order*) 37 ${kmod}/bin/depmod -b $out -C $out/etc/depmod.d -a $kernelVersion 38 fi 39 ''; 40}