summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/udev/ChangeLog13
-rw-r--r--sys-fs/udev/Manifest23
-rw-r--r--sys-fs/udev/files/digest-udev-0151
-rw-r--r--sys-fs/udev/files/udev-015-logging-config-option.patch115
-rw-r--r--sys-fs/udev/files/udev-015-no-wait-for-sleep.patch54
-rw-r--r--sys-fs/udev/files/udev.conf5
-rw-r--r--sys-fs/udev/files/udev.rules.post_01236
-rw-r--r--sys-fs/udev/udev-015.ebuild144
8 files changed, 362 insertions, 29 deletions
diff --git a/sys-fs/udev/ChangeLog b/sys-fs/udev/ChangeLog
index c55a1b8d080a..75e6d72b0fb5 100644
--- a/sys-fs/udev/ChangeLog
+++ b/sys-fs/udev/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for sys-fs/udev
# Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/ChangeLog,v 1.20 2004/01/16 18:57:29 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/ChangeLog,v 1.21 2004/01/29 18:39:19 azarah Exp $
+
+*udev-015 (29 Jan 2004)
+
+ 29 Jan 2004; Martin Schlemmer <azarah@gentoo.org> udev-015.ebuild,
+ files/udev-015-logging-config-option.patch,
+ files/udev-015-no-wait-for-sleep.patch,
+ files/udev.conf, files/udev.rules.post_012
+ Update version. Update no-wait-for-sleep.patch to apply again. Add
+ logging-config-option.patch to toggle logging via a udev.conf option,
+ and add it to udev.conf. Update udev.rules.post_012 with some misc
+ rules to extend devfs compat. Should close bug #39517.
*udev-013-r1 (16 Jan 2004)
diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index ba5dcfd9e2ab..c167d58a569f 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,15 +1,18 @@
MD5 39793fbef16989ec7c19fa8ba04370ee udev-013.ebuild 3343
-MD5 aba24cfb26a8f0b604a44a0d9ca7f830 files/udev.permissions 3550
+MD5 813397f1f9255c1b8c5e05e67b182938 udev-013-r1.ebuild 3352
+MD5 23107f7fdca08c89877c53bbedf1b552 ChangeLog 5514
+MD5 a19af1e2e874cadb09ab486d2fd343bb udev-012.ebuild 3400
+MD5 bc00dcf8be33408cad432b3b87d2e7c4 udev-015.ebuild 3680
+MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164
MD5 dbe7dc643caeafddc845fe9269430123 files/udev-011-no-wait-for-sleep.patch 1053
-MD5 8e183b484cd841ca7c3537c1cbd923a5 files/udev.rules.post_012 4367
-MD5 4e0d7e033730bbe5544745788e7a13a8 files/udev-012-udev_c-gcc295-compat.patch 277
+MD5 ab89de7957a7c7e6435203022d1db98a files/udev.conf 1184
MD5 8ee2274e54f304cb9dbbe9094982fe94 files/digest-udev-013-r1 62
-MD5 b87af7c246fa800c37ddc9bd3497ca54 files/udev.conf 1123
-MD5 4c26691abc7f47b0329203056cbcbebc files/udev.rules 3554
+MD5 4e0d7e033730bbe5544745788e7a13a8 files/udev-012-udev_c-gcc295-compat.patch 277
MD5 35fcac8040808dde93580ddfe5ff5a18 files/digest-udev-012 62
+MD5 6f31bbe4cb0613a733aebfab35378063 files/udev-015-logging-config-option.patch 4294
+MD5 8b2a4466a30de6474690e3f93703457b files/digest-udev-015 62
MD5 8ee2274e54f304cb9dbbe9094982fe94 files/digest-udev-013 62
-MD5 a19af1e2e874cadb09ab486d2fd343bb udev-012.ebuild 3400
-MD5 be959598bcfc4b16d7e3d6dcac4d64ce .#Manifest.1.20 1291
-MD5 813397f1f9255c1b8c5e05e67b182938 udev-013-r1.ebuild 3352
-MD5 587f6b44601dba58a82992226948f9a7 ChangeLog 5015
-MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164
+MD5 fb416fb7ea84ca08f4c1c697248beac2 files/udev.rules.post_012 4355
+MD5 aba24cfb26a8f0b604a44a0d9ca7f830 files/udev.permissions 3550
+MD5 cf9750c462c35531234ccb5f59b02e6b files/udev-015-no-wait-for-sleep.patch 1617
+MD5 4c26691abc7f47b0329203056cbcbebc files/udev.rules 3554
diff --git a/sys-fs/udev/files/digest-udev-015 b/sys-fs/udev/files/digest-udev-015
new file mode 100644
index 000000000000..43d5af2b46de
--- /dev/null
+++ b/sys-fs/udev/files/digest-udev-015
@@ -0,0 +1 @@
+MD5 6abfb23d89284cca03c5c68e2ab8910a udev-015.tar.bz2 1148457
diff --git a/sys-fs/udev/files/udev-015-logging-config-option.patch b/sys-fs/udev/files/udev-015-logging-config-option.patch
new file mode 100644
index 000000000000..91fd10ebc11c
--- /dev/null
+++ b/sys-fs/udev/files/udev-015-logging-config-option.patch
@@ -0,0 +1,115 @@
+--- udev-015/Makefile 2004-01-29 20:03:55.920842712 +0200
++++ udev-015.log_option/Makefile 2004-01-29 20:20:06.758252992 +0200
+@@ -232,6 +232,7 @@
+ @echo \#define UDEV_CONFIG_FILE \"$(configdir)\udev.conf\" >> $@
+ @echo \#define UDEV_RULES_FILE \"$(configdir)\udev.rules\" >> $@
+ @echo \#define UDEV_PERMISSION_FILE \"$(configdir)\udev.permissions\" >> $@
++ @echo \#define UDEV_LOG_DEFAULT \"yes\" >> $@
+
+ # config files automatically generated
+ GEN_CONFIGS = $(LOCAL_CFG_DIR)/udev.conf
+@@ -252,12 +253,12 @@
+ $(LD) $(LDFLAGS) -o $@ $(CRT0) udevinfo.o logging.o udev_config.o udevdb.o $(SYSFS) $(TDB) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(STRIPCMD) $@
+
+-$(DAEMON): udevd.h udevd.o udevd.o logging.o
+- $(LD) $(LDFLAGS) -o $@ $(CRT0) udevd.o logging.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
++$(DAEMON): udevd.h udevd.o udevd.o udev_config.o logging.o $(SYSFS)
++ $(LD) $(LDFLAGS) -o $@ $(CRT0) udevd.o udev_config.o logging.o $(SYSFS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(STRIPCMD) $@
+
+-$(SENDER): udevd.h udevsend.o udevd.o logging.o
+- $(LD) $(LDFLAGS) -o $@ $(CRT0) udevsend.o logging.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
++$(SENDER): udevd.h udevsend.o udevd.o udev_config.o logging.o $(SYSFS)
++ $(LD) $(LDFLAGS) -o $@ $(CRT0) udevsend.o udev_config.o logging.o $(SYSFS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(STRIPCMD) $@
+
+ clean:
+--- udev-015/etc/udev/udev.conf.in 2004-01-29 19:59:08.296568248 +0200
++++ udev-015.log_option/etc/udev/udev.conf.in 2004-01-29 20:15:01.824609952 +0200
+@@ -29,3 +29,6 @@
+ # explicit match in the permissions file
+ default_group="root"
+
++# udev_log - set to "yes" if you want logging, else "no"
++udev_log="yes"
++
+--- udev-015/udev_config.c 2004-01-29 19:20:34.634298376 +0200
++++ udev-015.log_option/udev_config.c 2004-01-29 20:22:49.771471216 +0200
+@@ -48,6 +48,7 @@ char udev_config_filename[PATH_MAX+NAME_
+ char default_mode_str[MODE_SIZE];
+ char default_owner_str[OWNER_SIZE];
+ char default_group_str[GROUP_SIZE];
++char udev_log_str[BOOL_SIZE];
+
+
+ static void init_variables(void)
+@@ -60,6 +61,7 @@ static void init_variables(void)
+ strfieldcpy(udev_config_filename, UDEV_CONFIG_FILE);
+ strfieldcpy(udev_rules_filename, UDEV_RULES_FILE);
+ strfieldcpy(udev_permissions_filename, UDEV_PERMISSION_FILE);
++ strfieldcpy(udev_log_str, UDEV_LOG_DEFAULT);
+ }
+
+ #define set_var(_name, _var) \
+@@ -156,6 +158,7 @@ static int parse_config_file(void)
+ set_var("default_mode", default_mode_str);
+ set_var("default_owner", default_owner_str);
+ set_var("default_group", default_group_str);
++ set_var("udev_log", udev_log_str);
+ }
+ dbg_parse("%s:%d:%Zd: error parsing '%s'", udev_config_filename,
+ lineno, temp - line, temp);
+@@ -191,6 +194,7 @@ static void get_dirs(void)
+ dbg_parse("udev_db_filename = %s", udev_db_filename);
+ dbg_parse("udev_rules_filename = %s", udev_rules_filename);
+ dbg_parse("udev_permissions_filename = %s", udev_permissions_filename);
++ dbg_parse("udev_log_str = %s", udev_log_str);
+ parse_config_file();
+
+ dbg_parse("udev_root = %s", udev_root);
+@@ -198,6 +202,7 @@ static void get_dirs(void)
+ dbg_parse("udev_db_filename = %s", udev_db_filename);
+ dbg_parse("udev_rules_filename = %s", udev_rules_filename);
+ dbg_parse("udev_permissions_filename = %s", udev_permissions_filename);
++ dbg_parse("udev_log_str = %s", udev_log_str);
+ }
+
+ void udev_init_config(void)
+--- udev-015/logging.c 2004-01-29 19:20:40.673380296 +0200
++++ udev-015.log_option/logging.c 2004-01-29 20:02:41.316184344 +0200
+@@ -26,6 +26,7 @@
+ #include <unistd.h>
+ #include <syslog.h>
+
++#include "udev.h"
+ #include "logging.h"
+
+
+@@ -47,6 +48,9 @@ int log_message(int level, const char *f
+ {
+ va_list args;
+
++ if (0 != strncmp(udev_log_str, "yes", BOOL_SIZE))
++ return 0;
++
+ if (!logging_init)
+ init_logging();
+ va_start(args, format);
+--- udev-015/udev.h 2004-01-29 20:00:40.473555216 +0200
++++ udev-015.log_option/udev.h 2004-01-29 20:03:16.094897176 +0200
+@@ -32,6 +32,7 @@
+ #define OWNER_SIZE 30
+ #define GROUP_SIZE 30
+ #define MODE_SIZE 8
++#define BOOL_SIZE 5
+
+ struct udevice {
+ char name[NAME_SIZE];
+@@ -72,5 +73,6 @@ extern char udev_rules_filename[PATH_MAX
+ extern char default_mode_str[MODE_SIZE];
+ extern char default_owner_str[OWNER_SIZE];
+ extern char default_group_str[GROUP_SIZE];
++extern char udev_log_str[BOOL_SIZE];
+
+ #endif
diff --git a/sys-fs/udev/files/udev-015-no-wait-for-sleep.patch b/sys-fs/udev/files/udev-015-no-wait-for-sleep.patch
new file mode 100644
index 000000000000..e21de378e525
--- /dev/null
+++ b/sys-fs/udev/files/udev-015-no-wait-for-sleep.patch
@@ -0,0 +1,54 @@
+--- udev-015/namedev.c 2004-01-29 19:02:10.067218096 +0200
++++ udev-015.no_sleep/namedev.c 2004-01-29 19:10:21.440518000 +0200
+@@ -285,6 +285,10 @@ static void wait_for_device_to_initializ
+ struct bus_file *b = &bus_files[0];
+ struct sysfs_attribute *tmpattr;
+ int loop;
++ int wait = 1;
++
++ if (getenv("UDEV_NO_SLEEP") != NULL)
++ wait = 0;
+
+ while (1) {
+ if (b->bus == NULL)
+@@ -300,7 +304,8 @@ static void wait_for_device_to_initializ
+ goto exit;
+ }
+ /* sleep to give the kernel a chance to create the file */
+- sleep(1);
++ if (wait)
++ sleep(1);
+ }
+ dbg("timed out waiting for '%s' file, continuing on anyway...", b->file);
+ goto exit;
+@@ -524,6 +529,10 @@ static struct sysfs_device *get_sysfs_de
+ struct sysfs_class_device *class_dev_parent;
+ struct timespec tspec;
+ int loop;
++ int wait = 1;
++
++ if (getenv("UDEV_NO_SLEEP") != NULL)
++ wait = 0;
+
+ /* Figure out where the device symlink is at. For char devices this will
+ * always be in the class_dev->path. But for block devices, it's different.
+@@ -542,7 +551,8 @@ static struct sysfs_device *get_sysfs_de
+ tspec.tv_nsec = 10000000; /* sleep 10 millisec */
+ loop = 10;
+ while (loop--) {
+- nanosleep(&tspec, NULL);
++ if (wait)
++ nanosleep(&tspec, NULL);
+ if (class_dev_parent)
+ sysfs_device = sysfs_get_classdev_device(class_dev_parent);
+ else
+@@ -569,7 +579,8 @@ device_found:
+ loop = 10;
+ tspec.tv_nsec = 10000000;
+ while (loop--) {
+- nanosleep(&tspec, NULL);
++ if (wait)
++ nanosleep(&tspec, NULL);
+ sysfs_get_device_bus(sysfs_device);
+
+ if (sysfs_device->bus[0] != '\0')
diff --git a/sys-fs/udev/files/udev.conf b/sys-fs/udev/files/udev.conf
index d84b33aab84a..0489594063df 100644
--- a/sys-fs/udev/files/udev.conf
+++ b/sys-fs/udev/files/udev.conf
@@ -1,5 +1,5 @@
# /etc/udev/udev.conf: main config file for udev
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/files/udev.conf,v 1.2 2003/12/26 23:32:44 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/files/udev.conf,v 1.3 2004/01/29 18:39:19 azarah Exp $
#
# This file can be used to override some of udev's default values
# for where it looks for files, and where it places device nodes.
@@ -26,3 +26,6 @@ udev_permissions="/etc/udev/udev.permissions"
# user to function in the permissions file!
default_mode="0666"
+# udev_log - set to "yes" if you want logging
+udev_log="no"
+
diff --git a/sys-fs/udev/files/udev.rules.post_012 b/sys-fs/udev/files/udev.rules.post_012
index 96b16c25176c..0772061b2935 100644
--- a/sys-fs/udev/files/udev.rules.post_012
+++ b/sys-fs/udev/files/udev.rules.post_012
@@ -1,20 +1,8 @@
# /etc/udev/udev.rules: device naming rules for udev
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/files/udev.rules.post_012,v 1.3 2004/01/16 18:57:29 azarah Exp $
-#
-# There are a number of modifiers that are allowed to be used in the NAME or PROGRAM fields.
-# They provide the following subsitutions:
-# %n - the "kernel number" of the device.
-# for example, 'sda3' has a "kernel number" of '3'
-# %k - the kernel name for the device.
-# %M - the kernel major number for the device
-# %m - the kernel minor number for the device
-# %b - the bus id for the device
-# %c - the return value of the external PROGRAM (note, this doesn't work within
-# the PROGRAM field for the obvious reason.)
-# %D - use the devfs style disk name for this device.
-# For partitions, this will result in 'part%n'
-# If this is not a partition, it will result in 'disc'
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/files/udev.rules.post_012,v 1.4 2004/01/29 18:39:19 azarah Exp $
#
+# 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.
###########################################################
#
@@ -22,6 +10,11 @@
#
###########################################################
+# LS120
+LABEL, BUS="scsi", SYSFS_model="LS-120 COSM 04", NAME="afd"
+LABEL, BUS="scsi", SYSFS_vendor="MATSHITA", NAME="afd"
+CALLOUT, BUS="scsi", PROGRAM="/sbin/scsi_id", ID="LS-120 COSM 04", NAME="afd"
+
# Looking for scsi bus id 42:0:0:1
BUS="scsi", PROGRAM="/bin/echo -n test-%b", RESULT="test-42:0:0:1", NAME="%c"
@@ -77,6 +70,9 @@ KERNEL="device-mapper", NAME="mapper/control"
# fb devices
KERNEL="fb[0-9]*", NAME="fb/%n", SYMLINK="%k"
+# floppy devices
+KERNEL="fd[0-9]*", NAME="floppy/%n", SYMLINK="%k"
+
# i2c devices
KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="%k"
@@ -84,6 +80,8 @@ KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="%k"
KERNEL="mice", NAME="input/mice"
KERNEL="mouse[0-9]*", NAME="input/mouse%n"
KERNEL="event[0-9]*", NAME="input/event%n"
+KERNEL="js*", NAME="input/%k"
+KERNEL="ts*", NAME="input/%k"
# loop devices
KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="%k"
@@ -92,8 +90,12 @@ KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="%k"
KERNEL="md[0-9]*", NAME="md/%n", SYMLINK="%k"
# misc devices
-KERNEL="rtc", NAME="misc/%k", SYMLINK="%k"
-KERNEL="psaux", NAME="misc/%k", SYMLINK="%k"
+KERNEL="rtc", NAME="misc/%k", SYMLINK="%k"
+KERNEL="psaux", NAME="misc/%k", SYMLINK="%k"
+KERNEL="agpgart", NAME="misc/%k", SYMLINK="%k"
+KERNEL="rtc", NAME="misc/%k", SYMLINK="%k"
+KERNEL="psaux", NAME="misc/%k", SYMLINK="%k"
+KERNEL="uinput", NAME="misc/%k", SYMLINK="%k"
# pty devices
KERNEL="pty[p-za-e][0-9a-f]*", NAME="pty/m%n", SYMLINK="%k"
diff --git a/sys-fs/udev/udev-015.ebuild b/sys-fs/udev/udev-015.ebuild
new file mode 100644
index 000000000000..5b877874fec1
--- /dev/null
+++ b/sys-fs/udev/udev-015.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/udev/udev-015.ebuild,v 1.1 2004/01/29 18:39:19 azarah Exp $
+
+# Note: Cannot use external libsysfs with klibc ..
+USE_KLIBC="no"
+USE_EXT_LIBSYSFS="no"
+
+inherit eutils
+
+DESCRIPTION="Linux dynamic device naming support (aka userspace devfs)"
+HOMEPAGE="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ"
+SRC_URI="mirror://kernel/linux/utils/kernel/hotplug/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~hppa"
+
+DEPEND="virtual/glibc
+ >=sys-apps/hotplug-20030805-r1
+ >=sys-fs/sysfsutils-0.3.0"
+
+RDEPEND="${DEPEND}
+ >=sys-apps/baselayout-1.8.6.12-r3"
+# We need some changes for devfs type layout
+
+pkg_setup() {
+ [ "${USE_KLIBC}" = "yes" ] && check_KV
+
+ return 0
+}
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ # No need to clutter the logs ...
+ sed -ie '/^DEBUG/ c\DEBUG = false' Makefile
+ # Do not use optimization flags from the package
+ sed -ie 's|$(OPTIMIZATION)||g' Makefile
+
+ # Make sure there is no sudden changes to udev.rules.devfs
+ # (more for my own needs than anything else ...)
+ if [ "`md5sum < "${S}/etc/udev/udev.rules.devfs"`" != \
+ "f3082e94beb6456f6693b893d4300c62 -" ]
+ then
+ echo
+ eerror "udev.rules.devfs has been updated, please validate!"
+ die "udev.rules.devfs has been updated, please validate!"
+ fi
+
+ # Make sure we do not build included libsysfs, but link to
+ # one in sysfsutils ...
+ if [ "${USE_EXT_LIBSYSFS}" = "yes" -a "${USE_KLIBC}" != "yes" ]
+ then
+ rm -rf ${S}/libsysfs
+ cp -Rd ${ROOT}/usr/include/sysfs ${S}/libsysfs
+ fi
+
+ # Setup things for klibc
+ if [ "${USE_KLIBC}" = "yes" ]
+ then
+ ln -snf ${ROOT}/usr/src/linux ${S}/klibc/linux
+ fi
+
+ # Do not sleep if UDEV_NO_SLEEP is set
+ epatch ${FILESDIR}/${P}-no-wait-for-sleep.patch
+
+ # Make logging a udev.conf option
+ epatch ${FILESDIR}/${P}-logging-config-option.patch
+}
+
+src_compile() {
+ local myconf=
+
+ # DBUS support?
+ if which pkg-config &>/dev/null && pkg-config dbus-1 &>/dev/null
+ then
+ myconf="USE_DBUS=true"
+ fi
+
+ # Do not work with emake
+ if [ "${USE_EXT_LIBSYSFS}" = "yes" -a "${USE_KLIBC}" != "yes" ]
+ then
+ make EXTRAS="extras/scsi_id" \
+ udevdir="/dev/" \
+ ARCH_LIB_OBJS="-lsysfs" \
+ SYSFS="" \
+ ${myconf} || die
+ else
+ make EXTRAS="extras/scsi_id" \
+ udevdir="/dev/" \
+ ${myconf} || die
+ fi
+}
+
+src_install() {
+ dobin udevinfo
+ into /
+ dosbin udev
+ # *** Note that we do not yet use or install udevd and udevsend, ***
+ # *** as they seem to be still too buggy (udevsend do not even ***
+ # *** start udevd over here ... ***
+ #dosbin udevd udevsend
+ dosbin extras/scsi_id/scsi_id
+
+ exeinto /etc/udev/scripts
+ doexe extras/ide-devfs.sh
+
+ insinto /etc/udev
+ doins ${FILESDIR}/udev.conf
+# newins etc/udev/udev.rules udev.rules.example
+ # For devfs style layout
+ newins ${FILESDIR}/udev.rules.post_012 udev.rules
+ # Our own custom udev.permissions
+ doins ${FILESDIR}/udev.permissions
+# doins etc/udev/udev.permissions
+ insinto /etc
+ doins extras/scsi_id/scsi_id.config
+ # DBUS support?
+ if which pkg-config &>/dev/null && pkg-config dbus-1 &>/dev/null
+ then
+ insinto /etc/dbus-1/system.d
+ doins etc/dbus-1/system.d/udev_sysbus_policy.conf
+ fi
+
+ dodir /etc/hotplug.d/default
+ dosym ../../../sbin/udev /etc/hotplug.d/default/udev.hotplug
+
+ doman *.8
+ doman extras/scsi_id/scsi_id.8
+
+ dodoc COPYING ChangeLog FAQ README TODO
+ dodoc docs/{overview,udev-OLS2003.pdf,udev_vs_devfs}
+}
+
+pkg_preinst() {
+ if [ -f "${ROOT}/etc/udev/udev.config" -a \
+ ! -f "${ROOT}/etc/udev/udev.rules" ]
+ then
+ mv -f ${ROOT}/etc/udev/udev.config ${ROOT}/etc/udev/udev.rules
+ fi
+}
+