2009/10/20, Thomas Bächler <thomas@archlinux.org>:
So, I wanted to revisit the subject of udev rules. Right now, we have rules in /etc/udev/rules.d and /lib/udev/rules.d - the idea was that "upstream" rules goes to /lib and whatever else goes to /etc.
This was interpreted by some of our own dev team that we should put whatever udev and packages ship to /lib and whatever we created ourselves to /etc - which is dumb. Right now we have:
- rules from upstream packages in /lib - patched rules from upstream packages in /lib - rules from upstream packages in /etc - Arch rules in /etc
It is pure chaos and nobody understands what is where and why. It is a nightmare.
Back when we had the discussion, I suggested what I will re-suggest now:
- All our packages should have udev rules in /lib only. What Arch officially ships is what we consider "upstream". (To put it in the same terminology that perl uses: core-rules and vendor-rules) - User or site specific rules go to /etc, overriding or complementing the "official" rule set (site-rules)
This will lead to a clear distinction and a clear rule instead of the chaos we have until now. It is also the only way that makes sense, everything else will lead to the same chaos again.
Please comment.
+1 from me. Well, running pkgfile -r etc/udev/rules.d I got the following lines: community/em8300-utils community/gpsd community/lomoco community/network-ups-tools community/rezero community/xen core/device-mapper core/pcmciautils core/udev extra/bluez extra/capi4hylafax extra/fuse extra/hal extra/libfprint extra/libnjb extra/microcode_ctl I guess that we should fix them. -- Arch Linux Developer http://www.archlinux.org http://www.archlinux.it