X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F16-depmod;h=65241f3a867d95d6214ae65d4ccc05412eda90de;hb=dcc3ba1983263376ddd9528dc2e4d5f08de0ef97;hp=3f41ca8d87061384d8ced6747a898fcf8302e007;hpb=f3b335ea5c94d5cf24ec6b9184106b298849f311;p=grml-live.git 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