diff options
author | Jaka Kranjc | 2007-01-26 22:14:04 +0100 |
---|---|---|
committer | Jaka Kranjc | 2007-01-26 22:14:04 +0100 |
commit | c5776d1b5f53aab1c360ac102a2506754a1f0a05 (patch) | |
tree | b3563df0e56ad7ad457701d9ce01033ad3f5c694 | |
parent | 0ea40f42955656ac1f67082669395459898c5182 (diff) |
udev synced from stable-0.4
-rwxr-xr-x | disk/udev/BUILD | 25 | ||||
-rwxr-xr-x | disk/udev/CONFIGURE | 27 | ||||
-rwxr-xr-x | disk/udev/CONFLICTS | 1 | ||||
-rwxr-xr-x | disk/udev/DEPENDS | 6 | ||||
-rwxr-xr-x | disk/udev/DETAILS | 17 | ||||
-rwxr-xr-x | disk/udev/FINAL | 27 | ||||
-rw-r--r-- | disk/udev/HISTORY | 233 | ||||
-rwxr-xr-x | disk/udev/INSTALL | 69 | ||||
-rw-r--r-- | disk/udev/Makefile.patch | 8 | ||||
-rwxr-xr-x | disk/udev/PREPARE | 26 | ||||
-rwxr-xr-x | disk/udev/PRE_BUILD | 21 | ||||
-rwxr-xr-x | disk/udev/TRIGGERS | 2 | ||||
-rw-r--r-- | disk/udev/init.d/coldplug | 38 | ||||
-rwxr-xr-x | disk/udev/init.d/udevd | 1 | ||||
-rw-r--r-- | disk/udev/modprobe.aliases | 9 | ||||
-rw-r--r-- | disk/udev/rules/40-alsa.rules | 15 | ||||
-rw-r--r-- | disk/udev/rules/50-default.rules | 275 | ||||
-rw-r--r-- | disk/udev/rules/52-modules.rules | 35 | ||||
-rw-r--r-- | disk/udev/rules/70-cdrom_perms.rules | 3 | ||||
-rw-r--r-- | disk/udev/rules/README | 4 | ||||
-rw-r--r-- | disk/udev/rules/rules.examples | 30 |
21 files changed, 252 insertions, 620 deletions
diff --git a/disk/udev/BUILD b/disk/udev/BUILD index b83f6f9069..a94395a421 100755 --- a/disk/udev/BUILD +++ b/disk/udev/BUILD @@ -1,20 +1,19 @@ make prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ V=true \ ${OPTS} ${UDEV_DEBUG} && -make EXTRAS="extras/run_directory extras/cdrom_id extras/firmware \ - extras/rule_generator" prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ \ - ${OPTS} ${UDEV_DEBUG} DEST_DIR="./" V=true && +make EXTRAS="extras/run_directory extras/cdrom_id extras/firmware" \ + prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ ${OPTS} \ + ${UDEV_DEBUG} DEST_DIR="./" V=true && if [[ "$UDEV_EXTRAS" == 'y' ]]; then - make EXTRAS="extras/ata_id extras/dasd_id extras/edd_id extras/floppy \ - extras/scsi_id extras/usb_id extras/volume_id" \ + make EXTRAS="extras/ata_id extras/dasd_id extras/edd_id extras/floppy extras/scsi_id extras/usb_id extras/volume_id" \ prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ ${OPTS} \ ${UDEV_DEBUG} DEST_DIR="./" V=true -fi +fi && -#if [[ "$UDEV_STATIC" == 'y' ]]; then -# pushd __static__ && -# # we are not going to use `make install' so no need to set its parameters -# message "${MESSAGE_COLOR}Building static utilities: $UDEV_STATIC_TARGET${DEFAULT_COLOR}" && -# make USE_STATIC=true V=true $OPTS $UDEV_STATIC_TARGET && -# popd -#fi +if [[ "$UDEV_STATIC" == 'y' ]]; then + pushd __static__ && + # we are not going to use `make install' so no need to set its parameters + message "${MESSAGE_COLOR}Building static utilities: $UDEV_STATIC_TARGET${DEFAULT_COLOR}" && + make USE_STATIC=true V=true $OPTS $UDEV_STATIC_TARGET && + popd +fi diff --git a/disk/udev/CONFIGURE b/disk/udev/CONFIGURE index 84286b3d86..82626a01d8 100755 --- a/disk/udev/CONFIGURE +++ b/disk/udev/CONFIGURE @@ -1,22 +1,17 @@ -config_query UDEV_PERSIST 'Install persistent storage rules?' n && - -config_query UDEV_PERSIST_INPUT 'Install persistent input rules?' n - +config_query UDEV_PERSIST 'install persistent disk rules?' n && +config_query UDEV_STATIC 'Create static binaries in addition to dynamically linked ones?' n && config_query_option UDEV_DEBUG 'Compile extra debugging messages?' n 'DEBUG=true' 'DEBUG=false' && - -#config_query UDEV_STATIC 'Create static binaries in addition to dynamically linked ones?' n && -#if [[ "$UDEV_STATIC" == 'y' ]]; then -# if [[ -z "$UDEV_STATIC_TARGET" ]]; then -# # add more UDEV utilities here as necessary, space-separated -# local UDEV_STATIC_TARGET="udevstart" -# fi && -# persistent_add UDEV_STATIC_TARGET && -# message "${MESSAGE_COLOR}Static utilities (with suffix .static): $UDEV_STATIC_TARGET${DEFAULT_COLOR}" -#fi && - +if [[ "$UDEV_STATIC" == 'y' ]]; then + if [[ -z "$UDEV_STATIC_TARGET" ]]; then + # add more UDEV utilities here as necessary, space-separated + UDEV_STATIC_TARGET="udevstart" + fi && + persistent_add UDEV_STATIC_TARGET && + message "${MESSAGE_COLOR}Static utilities (with suffix .static): $UDEV_STATIC_TARGET${DEFAULT_COLOR}" +fi && if [[ "$UDEV_PERSIST" == "y" ]]; then UDEV_EXTRAS=y && persistent_add UDEV_EXTRAS else - config_query UDEV_EXTRAS 'Compile extras helpers?' y + config_query UDEV_EXTRAS 'Do you want to compile extras helpers?' y fi diff --git a/disk/udev/CONFLICTS b/disk/udev/CONFLICTS deleted file mode 100755 index a68b971d98..0000000000 --- a/disk/udev/CONFLICTS +++ /dev/null @@ -1 +0,0 @@ -conflicts udev-old n diff --git a/disk/udev/DEPENDS b/disk/udev/DEPENDS index 0b1f63063e..7e6c68d342 100755 --- a/disk/udev/DEPENDS +++ b/disk/udev/DEPENDS @@ -1,6 +1,12 @@ depends gnupg && depends smgl-fhs && +KVER=`installed_version linux |cut -c-6` && + +if [[ "$KVER" < "2.6.13" ]]; then + depends hotplug +fi && + optional_depends libselinux \ "USE_SELINUX=true" \ "USE_SELINUX=false" \ diff --git a/disk/udev/DETAILS b/disk/udev/DETAILS index 2d93df6986..b732d42e6d 100755 --- a/disk/udev/DETAILS +++ b/disk/udev/DETAILS @@ -1,17 +1,18 @@ SPELL=udev - VERSION=103 - SOURCE=$SPELL-$VERSION.tar.bz2 - SOURCE2=$SOURCE.sign -SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-$VERSION - SOURCE_URL=$KERNEL_URL/pub/linux/utils/kernel/hotplug/$SOURCE - SOURCE2_URL=$SOURCE_URL.sign + VERSION=085 + SOURCE=${SPELL}-${VERSION}.tar.bz2 + SOURCE2=${SOURCE}.sign +SOURCE_DIRECTORY=${BUILD_DIRECTORY}/${SPELL}-${VERSION} + SOURCE_URL=${KERNEL_URL}/pub/linux/utils/kernel/hotplug/${SOURCE} + SOURCE2_URL=${SOURCE_URL}.sign SOURCE2_IGNORE=signature - SOURCE_GPG="kernel.gpg:$SOURCE.sign" + SOURCE_GPG="kernel.gpg:${SOURCE}.sign" WEB_SITE=http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html ENTERED=20030725 + UPDATED=20060107 + PATCHLEVEL=7 DOCS="ChangeLog COPYING FAQ README docs/* RELEASE-NOTES" LICENSE[0]=GPL - KEYWORDS="disk devices nodes modules" SHORT="Udev creates and removes device nodes" cat << EOF Udev creates and removes device nodes in /dev, based on events the kernel diff --git a/disk/udev/FINAL b/disk/udev/FINAL index 00a1e53ae3..9afbe88cff 100755 --- a/disk/udev/FINAL +++ b/disk/udev/FINAL @@ -1,3 +1,8 @@ +# moving the old rules to rules.d +if [ -f ${UDEV_CFG}/udev.rules ];then + install_config_file ${UDEV_CFG}/udev.rules ${UDEV_CFG}/rules.d/00-local.rules && + rm -f ${UDEV_CFG}/udev.rules +fi #Ensure that all groups used in 50-default.rules exist create_group disk create_group cdrom @@ -7,12 +12,16 @@ create_group video create_group audio # warn of coming changes -message "" -message "${PROBLEM_COLOR}About persistent net interfaces naming:" -message "" -message "${MESSAGE_COLOR}The spell now uses udev rules generator. Next time you boot, udev will generate" -message "a rules file called /etc/udev/rules.d/70-persistent-net.rules for all the" -message "interfaces it has detected. Then you can modify the name of the interface by" -message "changing the NAME key. Udev will not erase it." -message "The old configuration stuff with the DEVICE_MAC field in netconf is now obsolete." -message "${DEFAULT_COLOR}" +cat << EOF +MODALIAS and \$modalias are not needed and will be removed from one of +the next udev versions, replace it in all rules with ENV{MODALIAS} or +the sysfs "modalias" value. + +RUN="/bin/program" not longer automatically adds the subsystem +as the first parameter. This is from the days of /sbin/hotplug +which is dead now and it's just confusing to need to add a space at +the end of the program name to prevent this. +If you use rules that need the subsystem as the first parameter, +like the old "udev_run_hotlugd" and "udev_run_devd", add the subsystem +to the key like RUN+="/bin/program $env{SUBSYSTEM}". +EOF diff --git a/disk/udev/HISTORY b/disk/udev/HISTORY index 81524c7742..0b9f4f98e3 100644 --- a/disk/udev/HISTORY +++ b/disk/udev/HISTORY @@ -1,236 +1,3 @@ -2006-10-21 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 103 - -2006-10-11 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 102 - -2006-10-01 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: updated to 101 - * DEPENDS: removed hotplug for old kernels since they are no longer - supported in this spell - * INSTALL: no longer installs custom helpers, use new udev rules - generator, removed hotplug test for dedicated rules - * BUILD: build rules generator - * rules/70-cdrom_symlinks_and_perms.rules: removed - * rules/70-cdrom_perms: added - * helpers/{mac2name,cdrom_symlink_helper}: removed - * rules/07-bindings.rules: removed - * 52-modules.rules: moved in /rules directory - * FINAL: removed old warns, added one about net interfaces naming - -2006-09-23 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Removed 092 - * 50-default.rules: moved back firmware.sh there - * PREPARE: Removed old version handling, prevent to cast udev - if the kernel version is not recent enough - * CONFIGURE, INSTALL: Removed old version handling - * BUILD: Split a too long line - * CONFLICTS: conflicts with new udev-old spell - -2006-09-10 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 100 - * rules/*.rules, 52-modules.rules: Some keys have been renamed, - BUS->SUBSYSTEMS, SYSFS->ATTRS, ID->KERNEL, DRIVER->DRIVERS, see - the udev RELEASE-NOTES for more informations. - * 50-default.rules: Removed cdrom_id related rules, a dedicated rules - file is now installed by default, replaced cdrw group by burning group, - as this is the name we employ for that, removed missing usb group, - replaced scsi by disk group - moved symlinks and perms rules for cdrom so that they are processed - after the new file 60-cdrom_id.rules - * 70-cdrom_symlinks_and_perms.rules: created - * rules.examples: same renaming and replaced some = by == where - needed, examples rules should also try to be correct ;-) - * init.d/udevd: actually needs devices, caused troubles on boot - * init.d/coldplug: only needs udevd since udevd now needs devices - -2006-09-05 Flavien Bridault <vlaaad@sourcemage.org> - * INSTALL: handle rules files install for 092 (bug #13073) - -2006-08-15 Juuso Alasuutari <iuso@sourcemage.org> - * DETAILS: [automated] Removed UPDATED (deprecated in favor of - PATCHLEVEL). - -2006-08-15 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: PATCHLEVEL++ to get the alsa rules files that was actually - not integrated in git repository - -2006-08-13 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 097 - * rules.d/40-alsa.rules: Added since the file disappeared from the tarball - * INSTALL: Added missing && - rules have moved in the tarball from etc/udev to etc/udev/rules.d - install late rules from the tarball - -2006-07-11 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 096 - -2006-07-05 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 095 - * ifrename_wait_retry.patch: removed, has been integrated in release - * PRE_BUILD: removed patch above - -2006-06-25 Juuso Alasuutari <iuso@sourcemage.org> - * PRE_BUILD: Added patch to allow network interface renaming - with existing names. Added comments about patches, tidied - code. - * CONFIGURE, PRE_BUILD, BUILD, INSTALL: Commented out static - target parts, it only installs udevstart which is deprecated - now. - * ifrename_wait_retry.patch: Added. - * Makefile.patch: Updated. - -2006-06-24 Juuso Alasuutari <iuso@sourcemage.org> - * helpers/mac2name: Edited to read DEVICE_MAC instead of MAC in - /etc/sysconfig/network/*.dev. Fixed a bug where supplying no - argument to the script resulted in an interface name. Edited - to display message on error. Made small optimizations. - * DETAILS: PATCHLEVEL++ - -2006-06-21 Flavien Bridault <vlaaad@sourcemage.org> - * rules/50-default.rules: removed OSS sound devices from /dev/sound - (bug #12662) - * DETAILS: PATCHLEVEL++ - -2006-06-17 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: added 094. This one is not compatible with kernels older - than 2.6.15rc1 because of udevsend, so we will keep both 092 and - > 092 for a while, PATCHLEVEL++ to get the previous update - * PREPARE: Removed the warning for the config files move, this stuff - has been there for 14 months, added a test to use the right udev - version according to the kernel version - * CONFIGURE: Prompt for persistent input rules - * INSTALL: Removed udevsend and udevstart install for kernels - newer than 2.6.15rc1, added persistent input rules installing, - added firmware rule generation according to the kernel version - * FINAL: Removed the move of the config files - * rules/50-default.rules: remove the rule for the firmware, now - generated in INSTALL - * init.d/coldplug: added udevsettle launching after udevtrigger to - wait for udev events before the script exits - -2006-06-11 Juuso Alasuutari <iuso@sourcemage.org> - * rules/50-default.rules: Removed deprecated %e from cdrom - rules, rewrote to use new helper script instead. Did some - reorganizing with cdrom and disk rules. - * helpers/cdsymlink_helper: Added. - * INSTALL: Added cdsymlink_helper script install. - -2006-05-15 Juuso Alasuutari <iuso@sourcemage.org> - * PRE_BUILD: Removed fix for typo in alsa rules file, was fixed - upstream - * DEPENDS: Replaced "installed_version linux" with - "get_kernel_version", fixes conditional for custom kernels - -2006-05-15 Flavien Bridault <vlaaad@sourcemage.org> - * DETAILS: Updated to 092 - -2006-05-12 Juuso Alasuutari <iuso@sourcemage.org> - * rules/50-default.rules: Fixed invalid KERNEL fields - -2006-05-12 Juuso Alasuutari <iuso@sourcemage.org> - * rules/50-default.rules: Fixed ptmx device permission error - * DETAILS: PATCHLEVEL - -2006-05-11 Flavien Bridault <vlaaad@sourcemage.org> - * INSTALL: install path_id in /lib/udev since this is a helper, - otherwise udev persistent disk rules don't find it - -2006-05-10 Juuso Alasuutari <iuso@sourcemage.org> - * rules/50-default.rules: Fixed incorrect node naming for usb - printers, added new rules for various devices - * DETAILS: Updated PATCHLEVEL, added some new keywords - -2006-05-02 Juuso Alasuutari <iuso@sourcemage.org> - * INSTALL: Install early rules straight from source dir - * rules/05-udev-early.rules: Deleted - * rules/50-default.rules: Thiefed a ton of rules from gentoo - rules file, fixed some typos - * 52-modules.rules: Some edits - -2006-04-30 Juuso Alasuutari <iuso@sourcemage.org> - * INSTALL: Install modprobe aliases for non-hotplug systems - -2006-04-29 Juuso Alasuutari <iuso@sourcemage.org> - * PRE_BUILD: Add fix for upstream typo in alsa rules file - -2006-04-28 Juuso Alasuutari <iuso@sourcemage.org> - * DETAILS: Updated PATCHLEVEL - -2006-04-28 Juuso Alasuutari <iuso@sourcemage.org> - * 50-default.rules, 50-default.rules-hotplug: Deleted, see below - * rules/50-default.rules: Added, now the differences between - non-hotplug and hotplug systems are taken care of in - 52-modules.rules* - * 52-modules.rules, 52-modules.rules-hotplug: Added, different - module loading rules for non-hotplug and hotplug systems. Also - some new rules for non-hotplug, fixes e.g. SCSI driver - loading. - * INSTALL: Edited to install correct 52-modules.rules* file - * rules/README: Updated the text a bit - -2006-04-27 Juuso Alasuutari <iuso@sourcemage.org> - * DETAILS: Version 091 - -2006-04-18 Juuso Alasuutari <iuso@sourcemage.org> - * DETAILS: Version 090 - * rules/05-udev-early.rules: Added - -2006-04-18 Juuso Alasuutari <iuso@sourcemage.org> - * CONFIGURE, INSTALL: Undid previous hack in favor of a better - one. Now interface names are bound if MAC addresses are set - for them with netconf. Thanks to Mads Laursen for the idea and - Arwed von Merkatz for pointing out how to do it. - * bindings: Deleted - * helpers/mac2name: Added, helper script to retrieve interface - names in exchange for MAC addresses - * rules/07-bindings.rules: Added, calls mentioned script - -2006-04-15 Juuso Alasuutari <iuso@sourcemage.org> - * CONFIGURE: Added prompt to install persistent network - interface names, made prompts more uniform - * INSTALL: Edited to source a script to install persistent - network interface name rules - * bindings: Added, this is the mentioned script - -2006-04-06 Flavien Bridault <vlaaad@sourcemage.org> - * 50-default.rules-hotplug, 50-default.rules: added a rule for svgalib - devices (bug #10858) - -2006-04-04 Flavien Bridault <vlaaad@sourcemage.org> - * 50-default.rules-hotplug, 50-default.rules: corrected path to cdrom_id - -2006-04-04 Juuso Alasuutari <iuso@sourcemage.org> - * INSTALL: made loop vars local - -2006-04-04 Juuso Alasuutari <iuso@sourcemage.org> - * INSTALL: edited to install different default rules for hotplug - and non-hotplug systems because rulesets are incompatible. - removed one unused var, made another var local, and did some - minor and not so minor fixes. - * rules/50-default.rules: deleted - * 50-default.rules-hotplug: added (same file as above, moved & - renamed) - * 50-default.rules: added (new udev-only module autoload rules - file) - * TRIGGERS: hotplug cast/dispel now triggers udev cast to keep - rules up to date - * DETAILS: PATCHLEVEL up - * DEPENDS: made 1 var local - * CONFIGURE: made 1 var local - * PRE_BUILD: removed a sedit that fixes something already fixed - upstream - -2006-04-03 David Brown <dmlb2000@gmail.com> - * DETAILS: updated 089 - * init.d/coldplug: all you need is the udevtrigger instead of big script - -2006-03-12 Karsten Behrmann <BearPerson@sourcemage.org> - * DETAILS: (automated) Add KEYWORDS - -2006-02-27 Treeve Jelbert <treeve01@pi.be> - * DETAILS: version 086 - 2006-02-16 Treeve Jelbert <treeve01@pi.be> * DETAILS: version 085 diff --git a/disk/udev/INSTALL b/disk/udev/INSTALL index 69de8210c4..4d8386ec03 100755 --- a/disk/udev/INSTALL +++ b/disk/udev/INSTALL @@ -1,48 +1,45 @@ -install -d ${INSTALL_ROOT}/sys && -local FILE UDEV_CFG=${INSTALL_ROOT}/etc/udev && -mkdir -p ${UDEV_CFG}/rules.d && +install -d ${INSTALL_ROOT}/sys && +UDEV_CFG=${INSTALL_ROOT}/etc/udev && +DEV_DDIR=/etc/dev.d && +mkdir -p ${UDEV_CFG}/rules.d && -install_config_file $SCRIPT_DIRECTORY/udev.conf ${UDEV_CFG}/udev.conf && -install_config_file $SCRIPT_DIRECTORY/udev.missing ${UDEV_CFG}/udev.missing && +for file in $SCRIPT_DIRECTORY/udev.{conf,missing} ; do + install_config_file $file ${UDEV_CFG}/$(basename $file) +done && -for FILE in $SCRIPT_DIRECTORY/rules/* ; do - install_config_file $FILE ${UDEV_CFG}/rules.d/$(basename $FILE) +for file in $SCRIPT_DIRECTORY/rules/* ; do + install_config_file $file ${UDEV_CFG}/rules.d/$(basename $file) done && -# install required modprobe aliases for non-hotplug rules -mkdir -p $INSTALL_ROOT/etc/modprobe.d && -install_config_file $SCRIPT_DIRECTORY/modprobe.aliases $INSTALL_ROOT/etc/modprobe.d/udev +# install some of the suse rules +for file in etc/udev/suse/40-alsa.rules ; do + install_config_file $file ${UDEV_CFG}/rules.d/$(basename $file) +done && -# install early rules -install_config_file $SOURCE_DIRECTORY/etc/udev/rules.d/05-udev-early.rules \ - ${UDEV_CFG}/rules.d/05-udev-early.rules && -# install late rules -install_config_file $SOURCE_DIRECTORY/etc/udev/rules.d/95-udev-late.rules \ - ${UDEV_CFG}/rules.d/95-udev-late.rules +# udevstart and udevsend are nolonger installed by default. we still need them +install udevsend udevstart ${INSTALL_ROOT}/sbin && make prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ V=true ${OPTS} install && -make EXTRAS="extras/run_directory extras/cdrom_id extras/firmware extras/rule_generator" \ +make EXTRAS="extras/run_directory extras/cdrom_id extras/firmware" \ prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ \ V=true ${OPTS} install && - if [[ "$UDEV_EXTRAS" == 'y' ]]; then make EXTRAS="extras/ata_id extras/dasd_id extras/edd_id extras/floppy extras/scsi_id extras/usb_id extras/volume_id" prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ ${OPTS} V=true install && - install extras/path_id/path_id ${INSTALL_ROOT}/lib/udev && - - if [[ "$UDEV_PERSIST" == 'y' ]]; then - install_config_file etc/udev/rules.d/60-persistent-storage.rules ${UDEV_CFG}/rules.d/60-persistent-storage.rules - fi && - - if [ "$UDEV_PERSIST_INPUT" == 'y' ]; then - install_config_file etc/udev/rules.d/60-persistent-input.rules ${UDEV_CFG}/rules.d/60-persistent-input.rules - fi + install extras/path_id ${INSTALL_ROOT}/sbin && + + if [[ "$UDEV_PERSIST" == 'y' ]];then + for file in etc/udev/persistent-disk.rules ; do + install_config_file $file ${UDEV_CFG}/rules.d/60-$(basename $file) + done + fi + +fi && + +if [[ "$UDEV_STATIC" == 'y' ]]; then + pushd __static__ && + # we are not supposed to use `make install' + for __FILE in $UDEV_STATIC_TARGET; do + install -D $__FILE $INSTALL_ROOT/usr/sbin/$__FILE.static + done && + popd fi - -#if [[ "$UDEV_STATIC" == 'y' ]]; then -# pushd __static__ && -# # we are not supposed to use `make install' -# for FILE in $UDEV_STATIC_TARGET; do -# install -D $FILE $INSTALL_ROOT/usr/sbin/$FILE.static -# done && -# popd -#fi diff --git a/disk/udev/Makefile.patch b/disk/udev/Makefile.patch index 77c1c5be3c..6807c627d1 100644 --- a/disk/udev/Makefile.patch +++ b/disk/udev/Makefile.patch @@ -1,7 +1,7 @@ ---- Makefile 2006-06-25 15:48:49.000000000 +0300 -+++ Makefile.new 2006-06-25 15:49:39.000000000 +0300 -@@ -294,11 +294,6 @@ - @extras="$(EXTRAS)"; for target in $$extras; do \ +--- Makefile 2005-12-03 19:11:40.000000000 +0100 ++++ Makefile.new 2005-12-03 19:12:18.000000000 +0100 +@@ -340,11 +340,6 @@ + echo $$target; \ $(MAKE) -C $$target $@ || exit 1; \ done; -ifndef DESTDIR diff --git a/disk/udev/PREPARE b/disk/udev/PREPARE index e5e0a8ac80..bc1882307c 100755 --- a/disk/udev/PREPARE +++ b/disk/udev/PREPARE @@ -1,6 +1,3 @@ -# Source grimoire FUNCTIONS to have get_kernel_version -. $SCRIPT_DIRECTORY/../../FUNCTIONS - # testing if the install_config_file function is available # we don't want to spend time building udev if we can't install it properly @@ -8,17 +5,18 @@ if ! grep -q install_config_file /var/lib/sorcery/modules/libapi ; then message "${PROBLEM_COLOR}You don't have the latest stable Sorcery. Run \`sorcery update\`${DEFAULT_COLOR}" && return 1 -fi +fi && + +message "${MESSAGE_COLOR}" && +message "This update will move your current udev.rules to /etc/udev/rules.d/00-local.rules" && +message "As this is a major change, it won't happen unless\ + you answer y to the following question. ${DEFAULT_COLOR}" && -KERNEL_VERSION=$(get_kernel_version) && -PATCHLEVEL=`echo $KERNEL_VERSION | cut -d. -f2` && -SUBLEVEL=`echo $KERNEL_VERSION | cut -d. -f3` && -tmp=`echo $KERNEL_VERSION | cut -d. -f3 | sed 's/^[0-9]*//g'` && -SUBLEVEL=${SUBLEVEL/$tmp/} && +config_query UDEV_UPDATE2 "Do you still wish to continue?" n && -# kernel < 2.6.15-rc1 can't use udev > 0.93 tarballs because udevsend has been removed -if [ $SUBLEVEL -lt 15 -o $PATCHLEVEL -lt 6 ]; then - message "${PROBLEM_COLOR}You have a kernel < 2.6.15, it is too old for latest udev." && - message "Please use udev-old spell instead..." && - return 1 +if [ "$UDEV_UPDATE2" == "n" ]; then + return 1 +else + message "A default udev.rules will be placed in /etc/udev/rules.d/50-default.rules" && + message "And some examples in /etc/udev/rules.d/rules.examples" fi diff --git a/disk/udev/PRE_BUILD b/disk/udev/PRE_BUILD index 5a3ef7c09b..d9b5b0374c 100755 --- a/disk/udev/PRE_BUILD +++ b/disk/udev/PRE_BUILD @@ -1,12 +1,11 @@ -default_pre_build && -cd $SOURCE_DIRECTORY && +default_pre_build && +cd $SOURCE_DIRECTORY && +patch -p0 < $SCRIPT_DIRECTORY/Makefile.patch && -# Prevent udev restart on 'make install', -# allow network interface renaming with existing name. -patch -p0 < $SCRIPT_DIRECTORY/Makefile.patch - -#if [[ "$UDEV_STATIC" == 'y' ]]; then -# message "${MESSAGE_COLOR}Setting up static build directory...${DEFAULT_COLOR}" && -# mkdir __static__ && -# cp -aRv Makefile *.{c,h} ./__static__/ -#fi +if [[ "$UDEV_STATIC" == 'y' ]]; then + message "${MESSAGE_COLOR}Setting up static build directory...${DEFAULT_COLOR}" && + mkdir __static__ && + cp -aRv Makefile *.{c,h} ./__static__/ && + # fix file so static build actually works + sedit '29i#include <errno.h>' __static__/udev_libc_wrapper.c +fi diff --git a/disk/udev/TRIGGERS b/disk/udev/TRIGGERS deleted file mode 100755 index 0ae3c1985f..0000000000 --- a/disk/udev/TRIGGERS +++ /dev/null @@ -1,2 +0,0 @@ -on_cast hotplug cast_self -on_dispel hotplug cast_self diff --git a/disk/udev/init.d/coldplug b/disk/udev/init.d/coldplug index cebfb79c35..dd01774431 100644 --- a/disk/udev/init.d/coldplug +++ b/disk/udev/init.d/coldplug @@ -1,19 +1,41 @@ #!/bin/bash -PROGRAM=/bin/false +PROGRAM=/bin/true RUNLEVEL=DEV ESSENTIAL=yes -NEEDS="udevd" +NEEDS="devices udevd" # source function library . /etc/init.d/smgl_init -start() -{ - echo "Populating /dev with existing devices" - /sbin/udevtrigger - # Wait for udev events - /sbin/udevsettle --timeout=60 + +start() { +echo "starting coldplug" + list=$(builtin echo /sys/bus/*/devices/*/uevent) + list="$list $(builtin echo /sys/class/*/*/uevent)" + list="$list $(builtin echo /sys/block/*/uevent /sys/block/*/*/uevent)" + for i in $list; do + case "$i" in + */device/uevent|*\**) + continue + ;; + */class/mem/*|*/class/tty/*) + first="$first $i" + ;; + */block/md*) + last="$last $i" + ;; + */*) + default="$default $i" + ;; + esac + done + + # trigger the sorted events + for i in $first $default $last; do + builtin echo "add" > "$i" + done +echo "coldplug complete" } stop() { exit 0; } diff --git a/disk/udev/init.d/udevd b/disk/udev/init.d/udevd index 9942271fcb..ce632b8a9c 100755 --- a/disk/udev/init.d/udevd +++ b/disk/udev/init.d/udevd @@ -4,7 +4,6 @@ PROGRAM=/sbin/udevd ARGS="--daemon" RUNLEVEL=DEV ESSENTIAL=yes -NEEDS="devices" . /etc/init.d/smgl_init diff --git a/disk/udev/modprobe.aliases b/disk/udev/modprobe.aliases deleted file mode 100644 index d8c455fce1..0000000000 --- a/disk/udev/modprobe.aliases +++ /dev/null @@ -1,9 +0,0 @@ -# These are needed by udev to autoload some modules -alias pnp:dPNP0510 irtty-sir -alias pnp:dPNP0511 irtty-sir -alias pnp:dPNP0700 floppy -alias pnp:dPNP0800 pcspkr -alias pnp:dPNP0b00 rtc -alias pnp:dPNP0303 atkbd -alias pnp:dPNP0f13 psmouse -alias pnp:dPNPb02f analog diff --git a/disk/udev/rules/40-alsa.rules b/disk/udev/rules/40-alsa.rules deleted file mode 100644 index 0d0f4c2cb1..0000000000 --- a/disk/udev/rules/40-alsa.rules +++ /dev/null @@ -1,15 +0,0 @@ -SUBSYSTEM=="sound", GROUP="audio" -SUBSYSTEM=="snd", GROUP="audio" -KERNEL=="controlC[0-9]*", NAME="snd/%k" -KERNEL=="hwC[D0-9]*", NAME="snd/%k" -KERNEL=="pcmC[D0-9cp]*", NAME="snd/%k" -KERNEL=="midiC[D0-9]*", NAME="snd/%k" -KERNEL=="timer", NAME="snd/%k" -KERNEL=="seq", NAME="snd/%k" -SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="1604/8000/*", RUN+="/sbin/fxload -s /usr/share/alsa/firmware/usx2yloader/tascam_loader.ihx -I /usr/share/alsa/firmware/usx2yloader/us428fw.ihx" -SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="1604/8004/*", RUN+="/sbin/fxload -s /usr/share/alsa/firmware/usx2yloader/tascam_loader.ihx -I /usr/share/alsa/firmware/usx2yloader/us224fw.ihx" -SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="1604/8006/*", RUN+="/sbin/fxload -s /usr/share/alsa/firmware/usx2yloader/tascam_loader.ihx -I /usr/share/alsa/firmware/usx2yloader/us122fw.ihx" -SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="1604/8001/*", RUN+="/sbin/startproc /usr/bin/us428control" -SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="1604/8005/*", RUN+="/sbin/startproc /usr/bin/us428control" -SUBSYSTEM=="sound", KERNEL=="controlC?", RUN+="/usr/sbin/alsactl -F restore %n" -SUBSYSTEM=="sound", KERNEL=="hwC?D2", DRIVERS=="EMU10K1_Audigy", RUN+="/etc/alsa.d/udev-soundfont" diff --git a/disk/udev/rules/50-default.rules b/disk/udev/rules/50-default.rules index e268c06511..e6f4855857 100644 --- a/disk/udev/rules/50-default.rules +++ b/disk/udev/rules/50-default.rules @@ -1,200 +1,107 @@ +# allow automatic module loading in kernels >= 2.6.15 +ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe $env{MODALIAS}" + # There are a number of modifiers that are allowed to be used in some of the # fields. See the udev man page for a full description of them. -# tty devices -KERNEL=="console", NAME="%k", MODE="0600" -KERNEL=="tty", NAME="%k", MODE="0666" -KERNEL=="tty[0-9]*", NAME="vc/%n", SYMLINK="%k" -KERNEL=="ttyS[0-9]*", NAME="tts/%n", SYMLINK="%k" -KERNEL=="ttyUSB[0-9]*", NAME="tts/USB%n", SYMLINK="%k", MODE="0660" -KERNEL=="ippp0", NAME="%k" -KERNEL=="isdn*", NAME="%k" -KERNEL=="dcbri*", NAME="%k" -KERNEL=="ircomm*", NAME="%k" - -# pty devices -KERNEL=="ptmx", NAME="%k", MODE="0666" -KERNEL=="pty[p-za-e][0-9a-f]*", NAME="pty/m%n", SYMLINK="%k" -KERNEL=="tty[p-za-e][0-9a-f]*", NAME="pty/s%n", SYMLINK="%k" - -# vc devices -KERNEL=="vcs", NAME="vcc/0", SYMLINK="%k" -KERNEL=="vcs[0-9]*", NAME="vcc/%n", SYMLINK="%k" -KERNEL=="vcsa", NAME="vcc/a0", SYMLINK="%k" -KERNEL=="vcsa[0-9]*", NAME="vcc/a%n", SYMLINK="%k" +# All block devices +SUBSYSTEM=="block", GROUP="disk", MODE="0640" +SUBSYSTEM=="block", SYSFS{removable}=="1", GROUP="floppy" # device mapper creates its own device nodes so ignore these -KERNEL=="dm-[0-9]*", OPTIONS="ignore_device" +#KERNEL=="dm-[0-9]*", NAME="" KERNEL=="device-mapper", NAME="mapper/control" -# disk devices +# Disk devices KERNEL=="sd*", NAME="%k", GROUP="disk" KERNEL=="dasd*", NAME="%k", GROUP="disk" KERNEL=="ataraid*", NAME="%k", GROUP="disk" -SUBSYSTEMS=="scsi", KERNEL=="sr[0-9]*", GROUP="disk" -SUBSYSTEMS=="scsi", KERNEL=="sg[0-9]*", GROUP="burning" - -# all block devices -SUBSYSTEM=="block", GROUP="disk", MODE="0640" -SUBSYSTEM=="block", ATTRS{removable}=="1", GROUP="floppy", MODE="0660" - -# scsi cdrom devices -SUBSYSTEMS=="scsi", KERNEL=="s[grt][0-9]*", ATTRS{type}=="5", MODE="0660", GROUP="cdrom" - -# tape devices -KERNEL=="ht*", NAME="%k" -KERNEL=="nht*", NAME="%k" -KERNEL=="pt*", NAME="%k" -KERNEL=="npt*", NAME="%k" -KERNEL=="st*", NAME="%k" -KERNEL=="nst*", NAME="%k" -KERNEL=="osst*", NAME="%k" -KERNEL=="nosst*", NAME="%k" +BUS=="scsi", KERNEL=="sr[0-9]*", GROUP="scsi" +BUS=="scsi", KERNEL=="sg[0-9]*", GROUP="burning" + +# CDrom devices +BUS=="ide", KERNEL=="hd[a-z]", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" +BUS=="scsi", KERNEL=="sr[0-9]*", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" +BUS=="scsi", KERNEL=="scd[a-z]", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" + +ENV{ID_CDROM}=="?*", SYMLINK+="cdrom%e", GROUP="cdrom" +ENV{ID_CDROM_CD_RW}=="?*", SYMLINK+="cdrw%e", MODE="0660", GROUP="burning" +ENV{ID_CDROM_DVD}=="?*", SYMLINK+="dvd%e" +ENV{ID_CDROM_DVD_R}=="?*", SYMLINK+="dvdrw%e" + +# permissions for SCSI CD devices +BUS=="scsi", KERNEL=="s[grt][0-9]*", SYSFS{type}=="5", MODE="0660", GROUP="cdrom" + +# alsa devices +SUBSYSTEM=="sound", GROUP="audio", MODE="0660" +KERNEL=="controlC[0-9]*", NAME="snd/%k", RUN="/usr/sbin/alsactl restore" +KERNEL=="hw[CD0-9]*", NAME="snd/%k" +KERNEL=="pcm[CD0-9cp]*", NAME="snd/%k" +KERNEL=="midi[CD0-9]*", NAME="snd/%k" +KERNEL=="timer", NAME="snd/%k" +KERNEL=="seq", NAME="snd/%k" + +# sound devices +KERNEL=="admmidi" NAME="sound/%k", SYMLINK="%k" +KERNEL=="adsp", NAME="sound/%k", SYMLINK="%k" +KERNEL=="amidi" NAME="sound/%k", SYMLINK="%k" +KERNEL=="adsp[0-9]*", NAME="sound/%k", SYMLINK="%k" +KERNEL=="audio", NAME="sound/%k", SYMLINK="%k" +KERNEL=="dmmidi" NAME="sound/%k", SYMLINK="%k" +KERNEL=="audio[0-9]*", NAME="sound/%k", SYMLINK="%k" +KERNEL=="dsp", NAME="sound/%k", SYMLINK="%k" +KERNEL=="dsp[0-9]*", NAME="sound/%k", SYMLINK="%k" +KERNEL=="mixer", NAME="sound/%k", SYMLINK="%k" +KERNEL=="mixer[0-9]*", NAME="sound/%k", SYMLINK="%k" +KERNEL=="sequencer", NAME="sound/%k", SYMLINK="%k" +KERNEL=="sequencer[0-9]*", NAME="sound/%k", SYMLINK="%k" # input devices -KERNEL=="mice", NAME="input/%k", MODE="0644" -KERNEL=="mouse*", NAME="input/%k", MODE="0644" -KERNEL=="event*", NAME="input/%k", MODE="0644" -KERNEL=="js*", NAME="input/%k", MODE="0644" -KERNEL=="ts*", NAME="input/%k", MODE="0644" -KERNEL=="psaux", NAME="input/%k", SYMLINK="%k", MODE="0644" +KERNEL=="mice", NAME="input/%k", MODE="0644" +KERNEL=="mouse*", NAME="input/%k", MODE="0644" +KERNEL=="event*", NAME="input/%k", MODE="0644" +KERNEL=="js*", NAME="input/%k", MODE="0644" +KERNEL=="ts*", NAME="input/%k", MODE="0644" +KERNEL=="psaux" NAME="input/%k", SYMLINK="%k", MODE="0644" # misc devices -KERNEL=="agpgart", NAME="misc/%k", SYMLINK="%k" -KERNEL=="rtc", NAME="misc/%k", SYMLINK+="%k", MODE="0644" -KERNEL=="uinput", NAME="misc/%k", SYMLINK+="%k" -KERNEL=="inotify", NAME="misc/%k", SYMLINK+="%k", MODE="0666" - -# capi devices -KERNEL=="capi", NAME="capi20", SYMLINK="isdn/capi20" -KERNEL=="capi*", NAME="capi/%n" - -# cpu devices -KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid" -KERNEL=="msr[0-9]*", NAME="cpu/%n/msr" -KERNEL=="microcode", NAME="cpu/microcode" - -# i2c devices -KERNEL=="i2c-[0-9]*", NAME="i2c/%n", SYMLINK+="%k" - -# loop devices -KERNEL=="loop[0-9]*", NAME="loop/%n", SYMLINK+="%k", GROUP="disk" - -# md block devices -KERNEL=="md[0-9]*", NAME="md/%n", SYMLINK+="%k", GROUP="disk" - -# aoe char devices, -SUBSYSTEM=="aoe", KERNEL=="discover", NAME="etherd/%k", GROUP="disk", MODE="0220" -SUBSYSTEM=="aoe", KERNEL=="err", NAME="etherd/%k", GROUP="disk", MODE="0440" -SUBSYSTEM=="aoe", KERNEL=="interfaces", NAME="etherd/%k", GROUP="disk", MODE="0220" - -# netlink devices -KERNEL=="route", NAME="netlink/%k" -KERNEL=="skip", NAME="netlink/%k" -KERNEL=="usersock", NAME="netlink/%k" -KERNEL=="fwmonitor", NAME="netlink/%k" -KERNEL=="tcpdiag", NAME="netlink/%k" -KERNEL=="nflog", NAME="netlink/%k" -KERNEL=="xfrm", NAME="netlink/%k" -KERNEL=="arpd", NAME="netlink/%k" -KERNEL=="route6", NAME="netlink/%k" -KERNEL=="ip6_fw", NAME="netlink/%k" -KERNEL=="dnrtmsg", NAME="netlink/%k" -KERNEL=="tap*", NAME="netlink/%k" - -# ramdisk devices -KERNEL=="ram[0-9]*", NAME="rd/%n", SYMLINK+="%k" - -# IEEE1394 (firewire) devices (must be before raw devices below) -KERNEL=="raw1394", NAME="%k", GROUP="video" -KERNEL=="dv1394*", NAME="dv1394/%n", GROUP="video" -KERNEL=="video1394*", NAME="video1394/%n", GROUP="video" - -# raw devices -KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk" -KERNEL=="ram*", NAME="%k", GROUP="disk" - -# memory devices -KERNEL=="random", NAME="%k", MODE="0666" -KERNEL=="urandom", NAME="%k", MODE="0444" -KERNEL=="mem", NAME="%k", MODE="0640" -KERNEL=="kmem", NAME="%k", MODE="0640" -KERNEL=="port", NAME="%k", MODE="0640" -KERNEL=="full", NAME="%k", MODE="0666" -KERNEL=="null", NAME="%k", MODE="0666" -KERNEL=="zero", NAME="%k", MODE="0666" - -# usb devices -KERNEL=="hiddev*", NAME="usb/%k" -KERNEL=="auer*", NAME="usb/%k" -KERNEL=="legousbtower*", NAME="usb/%k" -KERNEL=="dabusb*", NAME="usb/%k" - -# dvb devices -SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video" - -# Asterisk Zaptel devices -KERNEL=="zapctl", NAME="zap/ctl" -KERNEL=="zaptimer", NAME="zap/timer" -KERNEL=="zapchannel", NAME="zap/channel" -KERNEL=="zappseudo", NAME="zap/pseudo" -KERNEL=="zap[0-9]*", NAME="zap/%n" - -# jaz devices -KERNEL=="jaz*", NAME="%k", GROUP="disk" - -# zip devices -KERNEL=="pocketzip*", NAME="%k", GROUP="disk" -KERNEL=="zip*", NAME="%k", GROUP="disk" - -# ls120 devices -KERNEL=="ls120", NAME="%k", GROUP="disk" - -# printer (usb printer rule must be before the rest) -SUBSYSTEMS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k", GROUP="lp", MODE="0660" -KERNEL=="lp*", NAME="%k", GROUP="lp", MODE="0660" -KERNEL=="irlpt", NAME="%k", GROUP="lp", MODE="0660" -KERNEL=="usblp", NAME="%k", GROUP="lp", MODE="0660" -KERNEL=="parport*", NAME="%k", GROUP="lp", MODE="0660" +KERNEL=="console" NAME="%k", MODE="0600" +KERNEL=="full", NAME="%k", MODE="0666" +KERNEL=="kmem", NAME="%k", MODE="0640" +KERNEL=="mem", NAME="%k", MODE="0640" +KERNEL=="null", NAME="%k", MODE="0666" +KERNEL=="port", NAME="%k", MODE="0640" +KERNEL=="random", NAME="%k", MODE="0644" +KERNEL=="rtc", NAME="%k", MODE="0644" +KERNEL=="tty", NAME="%k", MODE="0666" +KERNEL=="urandom", NAME="%k", MODE="0644" +KERNEL=="zero", NAME="%k", MODE="0666" + +# needed to create ptys +KERNEL=="ptmx", NAME="%k", MODE="0666" + +# printer +KERNEL=="lp*", NAME="%k", MODE="0660" +# HP printers +BUS=="usb", KERNEL=="lp[0-9]*", SYMLINK="usb%k" # v4l devices -KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK="video%n", GROUP="video", MODE="0660" -KERNEL=="radio[0-9]*", NAME="v4l/radio%n", GROUP="video", MODE="0660" -KERNEL=="vbi[0-9]*", NAME="v4l/vbi%n", SYMLINK="vbi%n", GROUP="video", MODE="0660" -KERNEL=="vtx[0-9]*", NAME="v4l/vtx%n", GROUP="video", MODE="0660" - -# video devices -KERNEL=="card*", NAME="dri/card%n", MODE="0660", GROUP="video" -KERNEL=="3dfx*", NAME="%k", MODE="0660", GROUP="video" -KERNEL=="nvidia*", NAME="%k", MODE="0660", GROUP="video" -KERNEL=="fb[0-9]", NAME="%k", MODE="0660", GROUP="video" -KERNEL=="svga[0-9]", NAME="%k", MODE="0660", GROUP="video" - -# network devices -KERNEL=="tun", NAME="net/%k" -KERNEL=="ippp*", NAME="net/%k", SYMLINK="%k", MODE="0644" -KERNEL=="ipstate*", NAME="net/%k", SYMLINK="%k", MODE="0660" -KERNEL=="spx", NAME="net/%k", SYMLINK="%k", MODE="0644" - -# diskonkey devices -KERNEL=="diskonkey*", NAME="%k", GROUP="disk" - -# rem_ide devices -KERNEL=="microdrive*", NAME="%k", GROUP="disk" - -# kbd devices -KERNEL=="kbd", NAME="%k", MODE="0664" - -# Sony Vaio Jogdial sonypi device -KERNEL=="sonypi", NAME="%k", MODE="0666" - -# packet devices -KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="burning", MODE="0660" -KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/pktcdvd%n", GROUP="burning", MODE="0660" - -# infiniband devices -KERNEL=="umad*", NAME="infiniband/%k" -KERNEL=="issm*", NAME="infiniband/%k" - -# Load firmwares -SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh" +KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK="video%n", GROUP="video", MODE="0660" +KERNEL=="radio[0-9]*", NAME="v4l/radio%n", GROUP="video", MODE="0660" +KERNEL=="vbi[0-9]*", NAME="v4l/vbi%n", SYMLINK="vbi%n", GROUP="video", MODE="0660" +KERNEL=="vtx[0-9]*", NAME="v4l/vtx%n", GROUP="video", MODE="0660" + +#nvidia devices +KERNEL=="nvidia*" NAME="%k", MODE="0660", GROUP="video" + +#framebuffer devices +KERNEL=="fb[0-9]", NAME="%k", MODE="0660", GROUP="video" + +# Network devices +KERNEL=="tun", NAME="net/%k" + +SUBSYSTEM=="firmware", ACTION="add", RUN+="/lib/udev/firmware_helper" + +# be backward compatible for a while with the /etc/hotplug.d/ system +# run /etc/hotplug.d/ stuff only if we came from a hotplug event, not for udevstart +ENV{UDEVD_EVENT}=="1", RUN="udev_run_hotplugd $env{SUBSYSTEM}" diff --git a/disk/udev/rules/52-modules.rules b/disk/udev/rules/52-modules.rules deleted file mode 100644 index fac6f9cb3a..0000000000 --- a/disk/udev/rules/52-modules.rules +++ /dev/null @@ -1,35 +0,0 @@ -# Module loading rules for systems without hotplug - -# Autoload modules that lack aliases but have them defined in -# /etc/modprobe.conf -ENV{MODALIAS}!="?*", SUBSYSTEM=="pnp", RUN+="/bin/sh -c 'while read id; do /sbin/modprobe pnp:d$$id; done < /sys$devpath/id'" - -# Check whether we need these rules for this event -ACTION!="add", GOTO="modprobe_end" - -# Autoload modules with aliases -ATTRS{modalias}=="?*", ACTION=="add", RUN+="/sbin/modprobe $env{MODALIAS}" - -# PCMCIA -SUBSYSTEM=="pcmcia_socket", RUN+="/sbin/modprobe pcmcia" - -# I2O -SUBSYSTEM!="i2o", GOTO="i2o_end" -RUN+="/sbin/modprobe i2o-block" -LABEL="i2o_end" - -# MMC -SUBSYSTEM!="mmc", GOTO="mmc_end" -RUN+="/sbin/modprobe mmc-block" -LABEL="mmc_end" - -# SCSI -SUBSYSTEM!="scsi_device", GOTO="scsi_device_end" -ATTRS{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod" -ATTRS{type}=="1", ATTRS{vendor}=="Onstream", ATTRS{model}!="ADR*" RUN+="/sbin/modprobe osst" -ATTRS{type}=="1", RUN+="/sbin/modprobe st" -ATTRS{type}=="[345]", RUN+="/sbin/modprobe sr_mod" -RUN+="/sbin/modprobe sg" -LABEL="scsi_device_end" - -LABEL="modprobe_end" diff --git a/disk/udev/rules/70-cdrom_perms.rules b/disk/udev/rules/70-cdrom_perms.rules deleted file mode 100644 index a0409a5072..0000000000 --- a/disk/udev/rules/70-cdrom_perms.rules +++ /dev/null @@ -1,3 +0,0 @@ -# cdrom device symlinks and permissions -ENV{ID_CDROM}=="?*", GROUP="cdrom" -ENV{ID_CDROM_CD_R}=="?*", MODE="0660", GROUP="burning" diff --git a/disk/udev/rules/README b/disk/udev/rules/README index 00a082a0c6..3e5c56c3bc 100644 --- a/disk/udev/rules/README +++ b/disk/udev/rules/README @@ -6,6 +6,4 @@ an idea of what's possible with udev. When a rule matches in one file, a different rule in another file will be ignored, so be sure to name your own files properly. -Be sure to leave rules files installed by the spell as they are, so the -spell can update them when needed. If you need to make changes, always -add your own rules files when possible. +Be sure to leave 50-default.rules as it is, so the spell can update it when needed. diff --git a/disk/udev/rules/rules.examples b/disk/udev/rules/rules.examples index 16cc41edb8..c36098dd2d 100644 --- a/disk/udev/rules/rules.examples +++ b/disk/udev/rules/rules.examples @@ -3,40 +3,40 @@ # These are just some examples, check the manpage for the full options # Looking for scsi bus id 42:0:0:1 -#SUBSYSTEMS=="scsi", PROGRAM="/bin/echo -n test-%b", RESULT="test-42:0:0:1", NAME="%c" +#BUS="scsi", PROGRAM="/bin/echo -n test-%b", RESULT="test-42:0:0:1", NAME="%c" # A usb camera. -#SUBSYSTEMS=="usb", ATTRS{vendor}=="FUJIFILM", ATTRS{model}=="M100", NAME="camera%n" +#BUS="usb", SYSFS_vendor="FUJIFILM", SYSFS_model="M100", NAME="camera%n" # USB Epson printer to be called lp_epson -#SUBSYSTEMS="usb", ATTRS{serial}="HXOLL0012202323480", NAME="lp_epson" +#BUS="usb", SYSFS_serial="HXOLL0012202323480", NAME="lp_epson" # USB HP printer to be called lp_hp -#SUBSYSTEMS="usb", ATTRS{serial}="W09090207101241330", NAME="lp_hp" +#BUS="usb", SYSFS_serial="W09090207101241330", NAME="lp_hp" # sound card with PCI bus id 00:0b.0 to be the first sound card -#SUBSYSTEMS=="pci", KERNELS=="00:0b.0", NAME="dsp" +#BUS="pci", ID="00:0b.0", NAME="dsp" # sound card with PCI bus id 00:07.1 to be the second sound card -#SUBSYSTEMS=="pci", KERNELS=="00:07.1", NAME="dsp1" +#BUS="pci", ID="00:07.1", NAME="dsp1" # USB mouse plugged into the third port of the first hub to be called mouse0 -#SUBSYSTEMS=="usb", PLACE=="1.3", NAME="mouse0" +#BUS="usb", PLACE="1.3", NAME="mouse0" # USB tablet plugged into the third port of the second hub to be called mouse1 -#SUBSYSTEMS=="usb", PLACE=="2.3", NAME="mouse1" -#SUBSYSTEMS=="usb", PLACE=="2.4", NAME="mouse2" +#BUS="usb", PLACE="2.3", NAME="mouse1" +#BUS="usb", PLACE="2.4", NAME="mouse2" # ttyUSB1 should always be called visor -#KERNEL=="ttyUSB1", NAME="visor" -#KERNEL=="ttyUSB0", NAME="pl2303" +#KERNEL="ttyUSB1", NAME="visor" +#KERNEL="ttyUSB0", NAME="pl2303" # a devfs like way to name some tty devices -#KERNEL=="ttyS*", NAME="tts/%n" -#KERNEL=="tty*", NAME="vc/%n" +#KERNEL="ttyS*", NAME="tts/%n" +#KERNEL="tty*", NAME="vc/%n" # if this is a ide cdrom, name it the default name, and create a symlink to cdrom -#SUBSYSTEMS=="ide", PROGRAM="/bin/cat /proc/ide/%k/media", RESULT=="cdrom", NAME="%k", SYMLINK="cdrom" +#BUS="ide", PROGRAM="/bin/cat /proc/ide/%k/media", RESULT="cdrom", NAME="%k", SYMLINK="cdrom" # DRI devices always go into a subdirectory (as per the LSB spec) -#KERNEL=="card*", NAME="dri/card%n" +#KERNEL="card*", NAME="dri/card%n" |