[argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Neil Woolford <neil@xxxxxxxxxxxxxxxxxx>
- To: argyllcms@xxxxxxxxxxxxx
- Date: Fri, 24 Nov 2006 19:22:49 +0000
On Fri, 2006-11-24 at 12:05 +0000, Neil Woolford wrote:
> On Fri, 2006-11-24 at 12:47 +1100, Graeme Gill wrote:
> > Neil Woolford wrote:
> >
> > > The key point is that the filename for the .rules file for the device
> > > must start with a number higher than 40. This means that the mode
> > > setting in the udev rule will be processed after rather than before the
> > > system defaults in file 40-permissions.rules. So 39-dtp94.rules will be
> > > overridden by the defaults, 41-dtp94.rules won't be.
> >
> > Right. Most of the doco recommends the opposite, on the assumption
> > that the purpose of your new .rules file is to create a specific
> > device name. I would guess that your approach will only work if the
> > 40-permissions.rules creates a /dev entry for usb devices, in the
> > form that libusb is looking for (/dev/bus/usb/00M/00N).
This appears to be handled in an earlier file, 20-names.rules, on Ubuntu
6.06.
> > My system for instance, has no such rule in the 40-permissions.rules file,
> > so I suspect your approach wouldn't work since there is nothing
> > to change the mode of. Perhaps you could identify the rule in
> > your 40-permissions.rules file that creates the /dev/bus/usb/*
> >
The rule is a short section of code that I guess walks the tree of
potential devices; I'm no programmer though...
> I'll have another look later in the day, but what appears to be
> happening in my (Ubuntu 6.06) 40-permissions.rules file is the setting
> of default permissions for (groups of) devices, rather than the creation
> of device entries themselves.
>
> Later rules files apply over earlier ones so the default permission
> overrides the one set specifically for the device or vice versa
> depending on the lexical order of the filenames.
>
> The files I'm looking at in .../udev/rules.d may of course be Ubuntu
> specific; I noticed that one of the original posters was using Ubuntu
> as I currently am. I've an experimental Mandriva setup on the laptop so
> I'll look at that too.
It does look horribly like there is a wide variation between
distributions in the implementation of udev rules; certainly the rule
currently given in the installation instructions section of the
Argyllcms website works perfectly as 10-dtp94.rules on the Mandriva Free
2007 but not on Ubuntu 6.06. (The contents of the ..../rules.d
directories are very different as well.)
To summarise my findings so far; the installation instructions work
fine on Mandriva Free 2007: Ubuntu 6.06 however requires a rule placed
after the default permissions file 40-permissions.rules and won't work
with both the use of = rather than == in the tests and the NAME
assignment at the end of the line. So unfortunately there is a swamp
here because of variation in udev implementation and rule sets between
distributions.
Neil
PS It is possible to set assignment to not be altered by following
rules by using := rather than = as the operator. Perhaps something
like;
BUS=="usb", SYSFS{idVendor}=="0765", SYSFS{idProduct}=="d094",\
MODE:="666"
as 10-dtp94.rules might work on a larger range of distributions? Or
would the removal of the kernel name section cause problems? Feedback
from those with other systems please...
- Follow-Ups:
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Graeme Gill
- References:
- [argyllcms] Getting udev rules to work on Ubuntu 6.06
- From: Neil Woolford
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Graeme Gill
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Neil Woolford
Other related posts:
- » [argyllcms] Getting udev rules to work on Ubuntu 6.06
- » [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- » [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- » [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- » [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- » [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Graeme Gill
- [argyllcms] Getting udev rules to work on Ubuntu 6.06
- From: Neil Woolford
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Graeme Gill
- [argyllcms] Re: Getting udev rules to work on Ubuntu 6.06
- From: Neil Woolford