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]

Reply via email to