2010-05-03 14:57:08 +00:00
|
|
|
# arg 1: the new package version
|
|
|
|
# arg 2: the old package version
|
|
|
|
|
|
|
|
post_upgrade() {
|
|
|
|
if [ "$(vercmp $2 100)" -lt 0 ]; then
|
|
|
|
echo "ATTENTION UDEV:"
|
|
|
|
echo "----------"
|
|
|
|
echo "udev >=098 rules syntax has changed, please update your own rules."
|
|
|
|
echo "udev >=099 Added persistent network and CD/DVD Symlink generator rules."
|
|
|
|
echo "Please read the instructions carefully before reboot."
|
|
|
|
echo "They are located in /etc/udev/readme-udev-arch.txt"
|
|
|
|
echo "----------"
|
|
|
|
fi
|
2011-05-31 21:06:15 +00:00
|
|
|
if [ "$(vercmp $2 169)" -lt 0 ]; then
|
|
|
|
echo "ATTENTION UDEV:"
|
|
|
|
echo "---------------"
|
|
|
|
echo "Kernel 2.6.32 or newer is now required."
|
|
|
|
echo "OSS emulation modules are not loaded by default, add to rc.conf if needed."
|
|
|
|
echo "Arch specific cd symlinks are now no longer created."
|
|
|
|
echo "cd and net persistent rules will no longer be autogenerated,"
|
|
|
|
echo "see <https://wiki.archlinux.org/index.php/Udev> for details."
|
|
|
|
echo "Errors are now logged (possibly to the console) by default."
|
|
|
|
echo "---------------"
|
|
|
|
fi
|
2011-06-09 21:20:28 +00:00
|
|
|
if [ "$(vercmp $2 172)" -lt 0 ]; then
|
|
|
|
echo "ATTENTION UDEV:"
|
|
|
|
echo "---------------"
|
|
|
|
echo "Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and"
|
|
|
|
echo "blacklisting in MODULES no longer works."
|
|
|
|
echo "See 'man modprobe.conf' for a replacement to blacklisting."
|
|
|
|
echo "To disable a module mod1 on the kernel command line, use"
|
|
|
|
echo "mod1.disable=1"
|
|
|
|
echo "or"
|
|
|
|
echo "modprobe.blacklist=mod1"
|
|
|
|
echo " --"
|
|
|
|
echo "The following modules are no longer unconditionally loaded:"
|
|
|
|
echo " pcspkr irtty-sir analog lp ppdev ide-generic"
|
|
|
|
echo "Add them to MODULES in rc.conf if you need them."
|
|
|
|
echo "---------------"
|
|
|
|
fi
|
2010-05-03 14:57:08 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
post_install() {
|
|
|
|
# If a ramfs is mounted, we still need to make sure that /dev/{console,null,zero} exist
|
|
|
|
# The Archlinux installer bind-mounts /dev to /mnt/dev, thus making the real /dev invisible
|
|
|
|
ROOTDIR=""
|
|
|
|
[ "$(stat -c %D /)" != "$(stat -c %D /dev)" ] && ROOTDIR=$(mktemp -d /tmp/udevinstall.XXXXXX)
|
|
|
|
[ -n "${ROOTDIR}" ] && mount --bind / ${ROOTDIR}
|
2010-11-15 03:25:01 +00:00
|
|
|
if [ ! -c ${ROOTDIR}/dev/console ]; then
|
|
|
|
rm -f ${ROOTDIR}/dev/console
|
|
|
|
mknod -m600 ${ROOTDIR}/dev/console c 5 1
|
|
|
|
fi
|
|
|
|
if [ ! -c ${ROOTDIR}/dev/null ]; then
|
|
|
|
rm -f ${ROOTDIR}/dev/null
|
|
|
|
mknod -m644 ${ROOTDIR}/dev/null c 1 3
|
|
|
|
fi
|
|
|
|
if [ ! -c ${ROOTDIR}/dev/zero ]; then
|
2011-01-27 17:43:19 +00:00
|
|
|
rm -f ${ROOTDIR}/dev/zero
|
2010-11-15 03:25:01 +00:00
|
|
|
mknod -m644 ${ROOTDIR}/dev/zero c 1 5
|
|
|
|
fi
|
2010-05-03 14:57:08 +00:00
|
|
|
if [ -n "${ROOTDIR}" ]; then
|
|
|
|
umount ${ROOTDIR}
|
|
|
|
rmdir ${ROOTDIR}
|
|
|
|
fi
|
|
|
|
}
|