# subdirectory. Each package contains a module for a specific
# kernel flavour.
- path=$1
- kbase=$(uname -r | sed 's/^\([0-9]*\.[0-9]*\.[0-9]*\)-.*/\1/')
- update_dir="$path/ubuntu-drivers/$kbase"
+ path=${1}
+ abi="$(uname -r)"
+ kver="$(echo "$abi" | cut -d- -f1,2)"
+ kbase="$(echo "$abi" | cut -d- -f1)"
- if [ -d "$update_dir" ]
- then
- if [ "$(echo $update_dir/*_$DPKG_ARCH.deb)" != \
- "$update_dir/*_$DPKG_ARCH.deb" ]
+ for leaf in "$abi" "$kver" "$kbase"
+ do
+ update_dir="$path/ubuntu-drivers/$leaf"
+
+ [ -d "$update_dir" ] || continue
+
+ if [ "$(echo ${update_dir}/*_${DPKG_ARCH}.deb)" != \
+ "${update_dir}/*_${DPKG_ARCH}.deb" ]
then
- echo "$update_dir"
- return 0;
+ echo "${update_dir}"
+ return 0
fi
- fi
+ done
- return 1;
+ return 1
}
is_nice_device ()
then
mount -t ${fstype} -o ro "${devname}" $mountpoint || continue
- if is_updates_path $mountpoint
+ if is_updates_path ${mountpoint}
then
return 0
else
- umount $mountpoint
+ umount ${mountpoint}
fi
fi
for x in $(cat /proc/cmdline)
do
- case $x in
+ case ${x} in
debian-installer/driver-update=*)
updates=${x#debian-installer/driver-update=}
;;
esac
done
-if [ "$updates" != "true" ]
+if [ "${updates}" != "true" ]
then
log_end_msg
exit 0
eject
fi
-log_wait_msg "Insert a driver CD and press ENTER ($DPKG_ARCH)"
+log_wait_msg "Insert a driver CD and press ENTER (${DPKG_ARCH})"
log_begin_msg "Looking for driver update CD"
log_begin_msg "Copying driver updates to temporary location"
mkdir -p /tmp/driver-updates
-cp $updates_root/*_$DPKG_ARCH.deb /tmp/driver-updates/
-umount $mountpoint
+cp ${updates_root}/*_${DPKG_ARCH}.deb /tmp/driver-updates/
+umount ${mountpoint}
if [ -x /usr/bin/eject ]
then