X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F16-depmod;fp=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F16-depmod;h=65241f3a867d95d6214ae65d4ccc05412eda90de;hp=3f41ca8d87061384d8ced6747a898fcf8302e007;hb=dcc3ba1983263376ddd9528dc2e4d5f08de0ef97;hpb=0e8d73017bf46cf0077e938aa267996ab5576dc2 diff --git a/etc/grml/fai/config/scripts/GRMLBASE/16-depmod b/etc/grml/fai/config/scripts/GRMLBASE/16-depmod index 3f41ca8..65241f3 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/16-depmod +++ b/etc/grml/fai/config/scripts/GRMLBASE/16-depmod @@ -14,9 +14,24 @@ if ! [ -x $target/sbin/depmod ] ; then exit 0 fi -# detect kernel version, assume newest kernel version +NEEDS_CHECK=false +depmod_version=$($ROOTCMD depmod --version | awk '/module-init-tools/ {print $2}') +if [ -n "${depmod_version:-}" ] ; then + # depmod of module-init-tools from squeeze or older + dpkg --compare-versions "$depmod_version" lt "3.13" && NEEDS_CHECK=true +fi + for kernel in $(find $target/lib/modules/ -maxdepth 1 -type d -name [0-9]*) ; do kernelversion=$(basename $kernel) + + # provide verbose error message regarding the annoying + # kernel x.y-grml[64] <-> module-init-tools v3.12 situation + if $NEEDS_CHECK && echo "$kernelversion" | grep -q '[[:digit:]]\.[[:digit:]]-' ; then + echo "Error: module-init-tools version <= 3.12 with two-digit kernel version found." >&2 + echo "This is known to be broken and does not provide a working modules.dep. :(" >&2 + exit 1 + fi + echo "Updating modules.dep for kernel $kernelversion" $ROOTCMD depmod -ae -F /boot/System.map-"$kernelversion" "$kernelversion" done