On Sat, 2005-07-23 at 11:18 -0400, Greg KH wrote: > On Sat, Jul 23, 2005 at 10:53:15AM -0400, Alec Warner wrote: > > Georgi Georgiev wrote: > > > Just to make sure I am not missing something. > > > > > > Does this cover the > > > > > > - If you are upgrading from a version of udev prior to 046 ... > > > - If you are upgrading from a version of udev prior to 050 ... > > > - If you are upgrading from a version of udev prior to 057 ... > > > - If you are upgrading from a version of udev prior to 059 ... > > > > > > cases automatically? I.e. *not* showing irrelevant warnings on every > > > upgrade/rebuild. > > > > > > > The writer of pkg_warn() could do this, it's still in the ebuild and > > could use the normal ebuild functions to determine what the user is > > running ( has_version() and whatnot ) and then run a case statement on that. > > Great, anyone care to send me a patch for the udev ebuild to do this so > not everyone sees this message? It will only get longer over time... >
Something like this maybe? (Yes, I know using $T will be frowned upon, but not much else you can do. Also, might use has_version(), but that is more difficult to parse, and I figured you normally only want those for system udev ...) -- Martin Schlemmer
Index: udev-063.ebuild =================================================================== RCS file: /var/cvsroot/gentoo-x86/sys-fs/udev/udev-063.ebuild,v retrieving revision 1.2 diff -u -r1.2 udev-063.ebuild --- udev-063.ebuild 17 Jul 2005 06:10:06 -0000 1.2 +++ udev-063.ebuild 25 Jul 2005 07:46:59 -0000 @@ -135,6 +135,15 @@ } pkg_preinst() { + local udev_version=$(udev -V 2>/dev/null) + + if [ -n "${udev_version}" ] + then + # Strip leading '0' + udev_version=${udev_version##0} + echo "${udev_version}" > "${T}/udev_version" + fi + if [ -f "${ROOT}/etc/udev/udev.config" -a \ ! -f "${ROOT}/etc/udev/udev.rules" ] then @@ -155,6 +164,8 @@ } pkg_postinst() { + local udev_version=0 + if [ "${ROOT}" = "/" -a -n "`pidof udevd`" ] then killall -15 udevd &>/dev/null @@ -162,33 +173,48 @@ killall -9 udevd &>/dev/null fi + [ -f "${T}/udev_version" ] && udev_version=$(< "${T}/udev_version") + # people want reminders, I'll give them reminders. Odds are they will # just ignore them anyway... - ewarn "Note: If you are upgrading from a version of udev prior to 046" - ewarn " and you rely on the output of udevinfo for anything, please" - ewarn " either run 'udevstart' now, or reboot, in order to get a" - ewarn " up-to-date udev database." - ewarn - ewarn "Note: If you are upgrading from a version of udev prior to 050" - ewarn " and you had written some custom permissions rules, please" - ewarn " realize that the permission rules are now part of the main" - ewarn " udev rules files and are not stand-alone anymore. This means" - ewarn " you need to rewrite them." - ewarn - ewarn "Note: If you are upgrading from a version of udev prior to 057" - ewarn " and you have written custom rules, and rely on the etc/dev.d/" - ewarn " functionality, please read the RELEASE-NOTES file for details" - ewarn " on what has changed with this feature, and how to change your" - ewarn " rules to work properly." - ewarn - ewarn "Note: If you are upgrading from a version of udev prior to 059" - ewarn " and you have written custom rules, and rely on the etc/dev.d/" - ewarn " functionality, or the etc/hotplug.d functionality, or just" - ewarn " want to write some very cool and power udev rules, please " - ewarn " read the RELEASE-NOTES file for details on what has changed" - ewarn " with this feature, and how to change your rules to work properly." + if [ "${udev_version}" -lt 46 ] + then + ewarn "Note: If you are upgrading from a version of udev prior to 046" + ewarn " and you rely on the output of udevinfo for anything, please" + ewarn " either run 'udevstart' now, or reboot, in order to get a" + ewarn " up-to-date udev database." + echo + fi + if [ "${udev_version}" -lt 50 ] + then + ewarn "Note: If you are upgrading from a version of udev prior to 050" + ewarn " and you had written some custom permissions rules, please" + ewarn " realize that the permission rules are now part of the main" + ewarn " udev rules files and are not stand-alone anymore. This means" + ewarn " you need to rewrite them." + echo + fi + if [ "${udev_version}" -lt 57 ] + then + ewarn "Note: If you are upgrading from a version of udev prior to 057" + ewarn " and you have written custom rules, and rely on the etc/dev.d/" + ewarn " functionality, please read the RELEASE-NOTES file for details" + ewarn " on what has changed with this feature, and how to change your" + ewarn " rules to work properly." + echo + fi + if [ "${udev_version}" -lt 59 ] + then + ewarn "Note: If you are upgrading from a version of udev prior to 059" + ewarn " and you have written custom rules, and rely on the etc/dev.d/" + ewarn " functionality, or the etc/hotplug.d functionality, or just" + ewarn " want to write some very cool and power udev rules, please " + ewarn " read the RELEASE-NOTES file for details on what has changed" + ewarn " with this feature, and how to change your rules to work properly." + echo + fi - einfo + echo einfo "For more information on udev on Gentoo, writing udev rules, and" einfo " fixing known issues visit:" einfo " http://www.gentoo.org/doc/en/udev-guide.xml"
signature.asc
Description: This is a digitally signed message part