This patch series aims to make dracut more distro-independent. It includes some of the functionality that Seewer Philippe posted to the list to make dracut work on Ubuntu. depmod does not create these files on all distros (Debian, specifically), so modify instmods to use pathname components and find to do what we want. As a bonus, this removes the special-case for =ata. --- dracut-functions | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dracut-functions b/dracut-functions index 852ce36..f40694e 100755 --- a/dracut-functions +++ b/dracut-functions @@ -167,17 +167,17 @@ dracut_install() { done } -modcat="/lib/modules/$kernel/modules" +srcmods="/lib/modules/$kernel/" instmods() { local mod mpargs modpath modname cmd while (($# > 0)); do mod=${1%.ko} + mod=${mod##*/} case $mod in - =ata) instmods $mpargs $(cat "${modcat}.block" |egrep 'ata|ahci');; - =*) instmods $mpargs $(cat "${modcat}.${mod#=}");; + =*) instmods $mpargs $(find "$srcmods" -path "*/${mod#=}/*");; --*) mpargs+=" $mod";; *) modprobe $mpargs --set-version $kernel --show-depends $mod \ - 2>/dev/null |while read cmd modpath; do + 2>/dev/null |while read cmd modpath options; do [[ $cmd = insmod ]] || continue modname=${modpath##*/} modname=${modname%.ko} @@ -185,7 +185,7 @@ instmods() { instmods $mpargs $modname continue } - inst_simple "$modpath" "/lib/modules/$kernel/$modname.ko" + inst_simple "$modpath" done ;; esac -- 1.6.0.6 -- To unsubscribe from this list: send the line "unsubscribe initramfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html