archboot/hooks/arch_addons
2007-09-07 17:22:10 +00:00

45 lines
1.7 KiB
Text

run_hook ()
{
# fix depmod link
ln -s /sbin/depmod /bin/depmod
ARCH_ADDON="optical storage floppy disk"
### exclude kernel ntfs it seems broken!
echo "Disabling kernel NTFS module for mounting, due to known issues!"
mv /lib/modules/$(uname -r)/kernel/fs/ntfs/ntfs.ko /lib/modules/$(uname -r)/kernel/fs/ntfs/ntfs.ko.old
echo " Waiting 10 seconds for usb/fw devices to come ready ..."
sleep 10
for i in $ARCH_ADDON; do
echo "Checking $i devices for addons ..."
for k in $(find /dev -maxdepth 1 -group "$i"); do
if mount $k /addons > /dev/null 2>&1; then
echo "Looking for new config files on $k, checking /config directory ..."
if [ -d "/addons/config" ]; then
echo "Copying new config files to /etc install environment ..."
cp -r /addons/config/* /etc/
echo "Finished."
RETRIGGER_UDEV="1"
else
echo "No files found to copy in /config directory on media $i."
fi
echo "Looking for new packages to install on $k, checking /packages directory ..."
if [ -d "/addons/packages" ]; then
mkdir /tmp/packages/
echo "Copying new packages to /tmp/packages/ install environment ..."
cp /addons/packages/*.pkg.tar.gz /tmp/packages/
echo "Installing new packages to install environment ..."
pacman -A /tmp/packages/* || echo "Dependency resolution failed!"
RETRIGGER_UDEV="1"
else
echo "No new files found to copy and install in /packages directory on media $k."
fi
umount /addons
sleep 2
fi
done
done
mv /lib/modules/$(uname -r)/kernel/fs/ntfs/ntfs.ko.old /lib/modules/$(uname -r)/kernel/fs/ntfs/ntfs.ko
if [ "$RETRIGGER_UDEV" = "1" ]; then
echo "Retrigger udev uevents ..."
/etc/start_udev uevents
fi
}