X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive-bottom%2F40install_driver_updates;h=584dcd0244fec94d1a63ba54981ace536352d9c5;hb=1cf746fcad4a425b769c3e43e227277ca73c6ad4;hp=698ed02a242076305f87fb9bfe7abd08930197a7;hpb=ea5ccacffb14572b4800d14fc9eea23cad7ca893;p=live-boot-grml.git diff --git a/scripts/live-bottom/40install_driver_updates b/scripts/live-bottom/40install_driver_updates index 698ed02..584dcd0 100755 --- a/scripts/live-bottom/40install_driver_updates +++ b/scripts/live-bottom/40install_driver_updates @@ -1,39 +1,52 @@ -#! /bin/sh +#!/bin/sh -PREREQ="" -DESCRIPTION="Installing driver updates..." +#set -e -. /scripts/live-functions +# initramfs-tools header + +PREREQ="" prereqs() { - echo "$PREREQ" + echo "${PREREQ}" } -case $1 in -# get pre-requisites -prereqs) - prereqs - exit 0 - ;; +case "${1}" in + prereqs) + prereqs + exit 0 + ;; esac -if [ ! -d /tmp/driver-updates ]; then +# live-initramfs header + +. /scripts/live-functions + +# live-initramfs script + +if [ ! -d /tmp/driver-updates ] +then exit 0 fi -log_begin_msg "$DESCRIPTION" +log_begin_msg "Installing driver updates..." install_dir=/var/cache/driver-updates -mkdir "/root$install_dir" -cp -a /tmp/driver-updates/*.deb "/root$install_dir/" +mkdir "/root${install_dir}" +cp -a /tmp/driver-updates/*.deb "/root${install_dir}/" # We cannot leave packages in a bad state. So if the install fails, remove # it. This will get caught in live.log. -for deb in "/root$install_dir"/*; do - if ! chroot /root dpkg -i "$install_dir/$deb"; then - chroot /root dpkg -P "${deb%%_*}" +for deb in "/root${install_dir}"/* +do + [ -f "${deb}" ] || continue + + debbase="${deb##*/}" + + if ! chroot /root dpkg -i "${install_dir}/${debbase}" + then + chroot /root dpkg -P "${debbase%%_*}" fi done