archboot/hooks/arch_addons
Tobias Powalowski ddd268c971 'upgpkg: added torrent creation to scripts, added latest initscript changes, updated udev.rules,
unload already loaded intel wireless drivers first, added release name to config files instead of rc.sysinit check'
2007-10-22 06:31:53 +00:00

57 lines
2.2 KiB
Text

run_hook ()
{
if grep -qw arch-addons /proc/cmdline; then
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
else
echo "ARCH_ADDONS USAGE:"
echo "------------------"
echo "By default loading is disabled!"
echo "In order to load external addon packages or configs"
echo "into install environment, please append arch-addons to boot prompt."
echo "Place external addon packages in /packages directory."
echo "Place external configs in /config directory."
echo "------------------"
echo "Message is displayed 10 seconds ..."
echo ""
sleep 10
fi
}