Package: udev Version: 0.053-1 Severity: wishlist
Hello, again! This is to suggest some improvements that would reduce the number of annoying bug reports from users and make the package easier for people who aren't experienced with udev. ** When parsing rules files, make all errors FATAL Currently, mistakes are ignored or bypassed. This makes it hard for the user to find problems as well as it is a risk. If udev is unable to put the *correct* device-node in place, then an incorrect one might go there instead! That would be bad. Example: BUS="scsi", PROGRAM="/sbin/udev_volume_id -u %N", \ RESULT="blah", \ KERNEL="hd*", \ NAME="myroot" There is a space after the RESULT="blah" line. The current scheme will simply use the rule KERNEL="hd*", NAME="myroot" This would be very very bad. ** Anytime there is a problem, tell the user about it. No need to use stderr or a log, just use stdout and use positive messages. An example of a postive mesasge is something like: Please make sure all double quotes (") are matching right. I notice a problem on line 6 of /etc/rules.d/foo ** make the udevtest output friendlier Currently, the output looks like so: # udevtest /block/sdc version 053 looking at '/block/sdc' opened class_dev->name='sdc' configured rule in '/etc/udev/rules.d/00-kodak_reader.rules[5]' applied, 'sdc' becomes 'kodak/mmc' creating device node '/dev/kodak/mmc', major = '8', minor = '32', mode = '0660', uid = '0', gid = '50' creating device partition nodes '/dev/kodak/mmc[1-15]' This is for a kodak cf/mmc/whatever reader plugged in via USB. It would be better to say something like so: # udevtest /block/sdc Using udevtest v0.53 on '/block/sdc' Found a matching rule file: '/etc/udev/rules.d/00-kodak_reader.rules' line: 5 Attributes: (* denotes rules matched on) KERNEL="sdc" SUBSYSTEM="foo" DRIVER="bar" PLACE="baz" * BUS="scsi" * ID="1:0:0:2" SYSFS{detach_state}="0" SYSFS{device_blocked}="0" SYSFS{max_sectors}="240" * SYSFS{model}="CF/SD/MMC/SM " SYSFS{queue_depth}="1" SYSFS{queue_type}="none" SYSFS{rev}="0105" SYSFS{scsi_level}="3" SYSFS{state}="running" SYSFS{timeout}="30" SYSFS{type}="0" * SYSFS{vendor}="Kodak " Applying rules: NAME{all_partitions}="kodak/mmc" GROUP="staff" Making devices: filename major minor mode uid gid /dev/kodak/mmc 8 32 0660 0 50 /dev/kodak/mmc1 8 33 0660 0 50 /dev/kodak/mmc2 8 34 0660 0 50 /dev/kodak/mmc3 8 35 0660 0 50 .... /dev/kodak/mmc15 8 47 0660 0 50 ** consider a different way to write rules Currently, the rules are like the following: BUS="scsi", SYSFS{vendor}="Kodak ", \ SYSFS{model}="CF/SD/MMC/SM ", \ ID="*:2", \ NAME{all_partitions}="kodak/mmc", \ GROUP="staff" From a user's point of view, this is a little confusing. BUS, KERNEL, SYSFS{foo}, ID, etc. are all the keys. NAME, GROUP, SYMLINK, etc. are all actions to be applied iff the keys match. Ideally, these would be seperate some how, so that it was clear to somone reading the file what was a key vs. an action. Just an idea: BUS="scsi" SYSFS{vendor}="Kodak " ID="*:2" { NAME="foo" GROUP="staff" } Anyway, those are my suggestions. I really like udev and think it's great. Thanks for your time and effort working on it. Ciao! -- System Information: Debian Release: 3.1 APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Locale: LANG=en_US.ISO-8859-15, LC_CTYPE=en_US.ISO-8859-15 (charmap=ISO-8859-15) Versions of packages udev depends on: ii hotplug 0.0.20040329-16 Linux Hotplug Scripts ii initscripts 2.86.ds1-1 Standard scripts needed for bootin ii libc6 2.3.2.ds1-20 GNU C Library: Shared libraries an ii makedev 2.3.1-75 Creates device files in /dev ii sed 4.1.4-1 The GNU sed stream editor -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]