[SM-Commit] GIT changes to master grimoire by Flavien Bridault (e77c5a541395d8ba1d7a47b1a49665675b324ff7)

Flavien Bridault scm at mail.sourcemage.org
Sat Sep 23 05:38:32 EDT 2006


GIT changes to master grimoire by Flavien Bridault <vlaaad at sourcemage.org>:

 ChangeLog                                |    3 
 disk/cdrdao/DETAILS                      |    6 
 disk/cdrdao/HISTORY                      |    3 
 disk/cdrdao/cdrdao-1.2.2.tar.bz2.sig     |binary
 disk/udev-old/52-modules.rules           |   35 +++++
 disk/udev-old/52-modules.rules-hotplug   |    5 
 disk/udev-old/BUILD                      |   19 ++
 disk/udev-old/CONFIGURE                  |   20 +++
 disk/udev-old/CONFLICTS                  |    1 
 disk/udev-old/DEPENDS                    |   19 ++
 disk/udev-old/DETAILS                    |   21 +++
 disk/udev-old/FINAL                      |   22 +++
 disk/udev-old/HISTORY                    |    3 
 disk/udev-old/INSTALL                    |   56 ++++++++
 disk/udev-old/Makefile.patch             |   14 ++
 disk/udev-old/PREPARE                    |   11 +
 disk/udev-old/PRE_BUILD                  |   12 +
 disk/udev-old/TRIGGERS                   |    2 
 disk/udev-old/helpers/cdsymlink_helper   |   61 +++++++++
 disk/udev-old/helpers/mac2name           |   18 ++
 disk/udev-old/init.d/coldplug            |   23 +++
 disk/udev-old/init.d/udevd               |   11 +
 disk/udev-old/modprobe.aliases           |    9 +
 disk/udev-old/rules/07-bindings.rules    |    2 
 disk/udev-old/rules/40-alsa.rules        |   15 ++
 disk/udev-old/rules/50-default.rules     |  200 +++++++++++++++++++++++++++++++
 disk/udev-old/rules/70-cdrom_perms.rules |    3 
 disk/udev-old/rules/README               |   11 +
 disk/udev-old/rules/rules.examples       |   42 ++++++
 disk/udev-old/udev.conf                  |   25 +++
 disk/udev-old/udev.missing               |   31 ++++
 disk/udev/BUILD                          |    3 
 disk/udev/CONFIGURE                      |    4 
 disk/udev/CONFLICTS                      |    1 
 disk/udev/DETAILS                        |    6 
 disk/udev/HISTORY                        |    9 +
 disk/udev/INSTALL                        |   34 -----
 disk/udev/PREPARE                        |   15 --
 disk/udev/rules/50-default.rules         |    3 
 smgl/init.d/DEPENDS                      |   15 ++
 smgl/init.d/DETAILS                      |    2 
 smgl/init.d/HISTORY                      |    5 
 42 files changed, 747 insertions(+), 53 deletions(-)

New commits:
commit cd274bea0e27c2326723d4ab54d42466232fa709
Author: Flavien Bridault <vlaaad at sourcemage.org>
Commit: Flavien Bridault <vlaaad at sourcemage.org>

    udev-old: new spell, allows to handle 092 seperatly from main udev spell.
              This spell is thus dedicated for use with kernels <= 2.6.14, until
              we remove support for them.

commit d2c480951b03d1a0f2265878d148f01c9f57fb35
Author: Flavien Bridault <vlaaad at sourcemage.org>
Commit: Flavien Bridault <vlaaad at sourcemage.org>

    udev: Removed handling of version 092 from the spell, because it becomes
          too complicated to maintain both versions in the same spell.

commit 1a6f74b75cc8755eaafb369ab5d17629aa9cf52f
Author: Flavien Bridault <vlaaad at sourcemage.org>
Commit: Flavien Bridault <vlaaad at sourcemage.org>

    init.d: Check which udev version should be used

commit 1f6047b21578f8433c2b4574834ba8ae207e38d5
Author: Flavien Bridault <vlaaad at sourcemage.org>
Commit: Flavien Bridault <vlaaad at sourcemage.org>

    cdrdao: updated to 1.2.2

diff --git a/ChangeLog b/ChangeLog
index aa6bc65..0860802 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+2006-09-23 Flavien Bridault <vlaaad at sourcemage.org>
+	* disk/udev-old: added, seperated 092 version from udev spell
+
 2006-09-22 Arjan Bouter <abouter at sourcemage.org>
 	* collab/simplegroupware: new spell
 
diff --git a/disk/cdrdao/DETAILS b/disk/cdrdao/DETAILS
index 5fdd886..9bc264f 100755
--- a/disk/cdrdao/DETAILS
+++ b/disk/cdrdao/DETAILS
@@ -1,5 +1,5 @@
            SPELL=cdrdao
-         VERSION=${VERSION:=1.2.1}
+         VERSION=${VERSION:=1.2.2}
 if  [  "$CVS"  ==  "y"  ];  then
          VERSION=sfcvs
   FORCE_DOWNLOAD=1
@@ -8,10 +8,10 @@ SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL
    SOURCE_URL[0]=cvs://:pserver:anonymous@cdrdao.cvs.sourceforge.net:/cvsroot/cdrdao:cdrdao
    SOURCE_IGNORE=volatile
 else
-          SOURCE=$SPELL-$VERSION.tar.gz
+          SOURCE=$SPELL-$VERSION.tar.bz2
    SOURCE_URL[0]=$SOURCEFORGE_URL/$SPELL/$SOURCE
 SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-$VERSION
-  SOURCE_HASH[0]=sha512:18c76686e950e47a7ef028a0ee8ca06a34c54509a253ef4c99fd43cc92cbff0d75e8adf3525f184de60e53bd6af21e1d2bcb429e9f1852fcbd5b95f81652121f
+      SOURCE_GPG="gurus.gpg:${SOURCE}.sig:WORKS_FOR_ME"
 fi
         WEB_SITE=http://cdrdao.sourceforge.net/index.html
          ENTERED=20020201
diff --git a/disk/cdrdao/HISTORY b/disk/cdrdao/HISTORY
index 5e8ac13..167a0e8 100644
--- a/disk/cdrdao/HISTORY
+++ b/disk/cdrdao/HISTORY
@@ -1,3 +1,6 @@
+2006-09-22 Flavien Bridault <vlaaad at sourcemage.org>
+	*
+
 2006-05-26 Flavien Bridault <vlaaad at sourcemage.org>
 	* DETAILS: Corrected sourceforge cvs url (bug #11880)
 
diff --git a/disk/cdrdao/cdrdao-1.2.2.tar.bz2.sig b/disk/cdrdao/cdrdao-1.2.2.tar.bz2.sig
new file mode 100644
index 0000000..55bfcd8
Binary files /dev/null and b/disk/cdrdao/cdrdao-1.2.2.tar.bz2.sig differ
diff --git a/disk/udev-old/52-modules.rules b/disk/udev-old/52-modules.rules
new file mode 100644
index 0000000..fac6f9c
--- /dev/null
+++ b/disk/udev-old/52-modules.rules
@@ -0,0 +1,35 @@
+# 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-old/52-modules.rules-hotplug b/disk/udev-old/52-modules.rules-hotplug
new file mode 100644
index 0000000..4512d32
--- /dev/null
+++ b/disk/udev-old/52-modules.rules-hotplug
@@ -0,0 +1,5 @@
+# Module loading rules for systems with hotplug
+
+# 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-old/BUILD b/disk/udev-old/BUILD
new file mode 100755
index 0000000..90cbc23
--- /dev/null
+++ b/disk/udev-old/BUILD
@@ -0,0 +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" \
+     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" \
+       prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ ${OPTS} \
+       ${UDEV_DEBUG} DEST_DIR="./" V=true 
+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-old/CONFIGURE b/disk/udev-old/CONFIGURE
new file mode 100755
index 0000000..278fb5e
--- /dev/null
+++ b/disk/udev-old/CONFIGURE
@@ -0,0 +1,20 @@
+config_query UDEV_PERSIST 'Install persistent storage rules?' 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_PERSIST" == "y" ]]; then
+  UDEV_EXTRAS=y  &&
+  persistent_add UDEV_EXTRAS
+else
+  config_query UDEV_EXTRAS 'Compile extras helpers?' y
+fi
diff --git a/disk/udev-old/CONFLICTS b/disk/udev-old/CONFLICTS
new file mode 100755
index 0000000..ab4e08d
--- /dev/null
+++ b/disk/udev-old/CONFLICTS
@@ -0,0 +1 @@
+conflicts udev y
diff --git a/disk/udev-old/DEPENDS b/disk/udev-old/DEPENDS
new file mode 100755
index 0000000..f17ed61
--- /dev/null
+++ b/disk/udev-old/DEPENDS
@@ -0,0 +1,19 @@
+depends  gnupg     &&
+depends  smgl-fhs  &&
+
+. $GRIMOIRE/FUNCTIONS
+local KVER=$(get_kernel_version |cut -c-6)  &&
+
+if [[ "$KVER" < "2.6.13" ]]; then
+  depends  hotplug
+fi  &&
+
+optional_depends  libselinux             \
+                  "USE_SELINUX=true"     \
+                  "USE_SELINUX=false"    \
+                  "For selinux support"  &&
+
+optional_depends  SYSTEM-LOGGER                 \
+                  "USE_LOG=true"                \
+                  "USE_LOG=false"               \
+                  "For logging through syslog"
diff --git a/disk/udev-old/DETAILS b/disk/udev-old/DETAILS
new file mode 100755
index 0000000..67e121b
--- /dev/null
+++ b/disk/udev-old/DETAILS
@@ -0,0 +1,21 @@
+           SPELL=udev-old
+         VERSION=092
+          SOURCE=udev-$VERSION.tar.bz2
+         SOURCE2=$SOURCE.sign
+SOURCE_DIRECTORY=$BUILD_DIRECTORY/udev-$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"
+        WEB_SITE=http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
+         ENTERED=20060920
+            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
+sends out on device discovery or removal.
+This spell is dedicated for use with kernels <= 2.6.14. For the more recent
+kernels, it is recommended to use udev spell.
+EOF
diff --git a/disk/udev-old/FINAL b/disk/udev-old/FINAL
new file mode 100755
index 0000000..d707d46
--- /dev/null
+++ b/disk/udev-old/FINAL
@@ -0,0 +1,22 @@
+#Ensure that all groups used in 50-default.rules exist
+create_group disk
+create_group cdrom
+create_group floppy
+create_group burning
+create_group video
+create_group audio
+
+# warn of coming changes
+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-old/HISTORY b/disk/udev-old/HISTORY
new file mode 100644
index 0000000..b094562
--- /dev/null
+++ b/disk/udev-old/HISTORY
@@ -0,0 +1,3 @@
+2006-09-23 Flavien Bridault <vlaaad at sourcemage.org>
+	* Created spell
+
diff --git a/disk/udev-old/INSTALL b/disk/udev-old/INSTALL
new file mode 100755
index 0000000..63190a5
--- /dev/null
+++ b/disk/udev-old/INSTALL
@@ -0,0 +1,56 @@
+install -d ${INSTALL_ROOT}/sys                &&
+local FILE UDEV_CFG=${INSTALL_ROOT}/etc/udev  &&
+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/rules/* ; do
+  install_config_file $FILE ${UDEV_CFG}/rules.d/$(basename $FILE)
+done  &&
+
+# install diff default rules on hotplug and non-hotplug systems, install 
+# required modprobe aliases for non-hotplug rules
+if spell_ok hotplug; then
+  install_config_file $SCRIPT_DIRECTORY/52-modules.rules-hotplug ${UDEV_CFG}/rules.d/52-modules.rules
+else
+  install_config_file $SCRIPT_DIRECTORY/52-modules.rules ${UDEV_CFG}/rules.d/52-modules.rules  &&
+  mkdir -p $INSTALL_ROOT/etc/modprobe.d  &&
+  install_config_file $SCRIPT_DIRECTORY/modprobe.aliases $INSTALL_ROOT/etc/modprobe.d/udev
+fi  &&
+
+# install early rules
+nstall_config_file $SOURCE_DIRECTORY/etc/udev/05-udev-early.rules  \
+                           ${UDEV_CFG}/rules.d/05-udev-early.rules
+
+# udevstart and udevsend are nolonger installed by default. we need them for kernel < 2.6.15rc1
+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" \
+  prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ \
+  V=true ${OPTS} install &&
+
+# Install helper scripts
+mkdir -p /lib/udev  &&
+for FILE in $SCRIPT_DIRECTORY/helpers/*; do
+  install -m 755 $FILE $INSTALL_ROOT/lib/udev
+done  &&
+
+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/60-persistent-storage.rules ${UDEV_CFG}/rules.d/60-persistent-storage.rules
+  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
diff --git a/disk/udev-old/Makefile.patch b/disk/udev-old/Makefile.patch
new file mode 100644
index 0000000..77c1c5b
--- /dev/null
+++ b/disk/udev-old/Makefile.patch
@@ -0,0 +1,14 @@
+--- 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 \
+ 		$(MAKE) -C $$target $@ || exit 1; \
+ 	done;
+-ifndef DESTDIR
+-	- killall udevd
+-	- rm -rf /dev/.udev
+-	- $(sbindir)/udevd --daemon
+-endif
+ .PHONY: install-bin
+ 
+ uninstall-bin:
diff --git a/disk/udev-old/PREPARE b/disk/udev-old/PREPARE
new file mode 100755
index 0000000..21fa731
--- /dev/null
+++ b/disk/udev-old/PREPARE
@@ -0,0 +1,11 @@
+# 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
+
+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
diff --git a/disk/udev-old/PRE_BUILD b/disk/udev-old/PRE_BUILD
new file mode 100755
index 0000000..5a3ef7c
--- /dev/null
+++ b/disk/udev-old/PRE_BUILD
@@ -0,0 +1,12 @@
+default_pre_build     &&
+cd $SOURCE_DIRECTORY  &&
+
+# 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
diff --git a/disk/udev-old/TRIGGERS b/disk/udev-old/TRIGGERS
new file mode 100755
index 0000000..0ae3c19
--- /dev/null
+++ b/disk/udev-old/TRIGGERS
@@ -0,0 +1,2 @@
+on_cast    hotplug  cast_self
+on_dispel  hotplug  cast_self
diff --git a/disk/udev-old/helpers/cdsymlink_helper b/disk/udev-old/helpers/cdsymlink_helper
new file mode 100644
index 0000000..803cc20
--- /dev/null
+++ b/disk/udev-old/helpers/cdsymlink_helper
@@ -0,0 +1,61 @@
+#!/bin/bash
+
+if [[ -z "$1" ]]; then
+  echo "Not enough input!"
+  echo "Usage: $0 %k"
+  exit 1
+fi
+
+# Prevent conflicts between parallel processes by creating a lock dir 
+# and using it as a queue ticket. Only the process that can create it 
+# (meaning it doesn't already exist from another process) is allowed to 
+# proceed, others have to wait. Maximum queue time is 5 seconds, queue 
+# check happens every 20 milliseconds.
+lock()
+{
+  [[ -d /dev/.udev ]] ||
+    if ! mkdir -p /dev/.udev; then
+      echo "Cannot create /dev/.udev!"
+      exit 1
+    fi
+  LOCK_DIR=/dev/.udev/.lock-cdsymlink
+  local retry=250
+  while ! mkdir $LOCK_DIR 2>/dev/null; do
+    if ((retry==0)); then
+       echo "Cannot lock $LOCK_DIR!" >&2
+       exit 2
+    fi
+    sleep 0.02
+    ((retry-=1))
+  done
+}
+
+# Once the process is finished, delete lock dir so that the next process 
+# may step forward in queue.
+unlock()
+{
+  [[ "$LOCK_DIR" ]] || return 0
+  rm -r $LOCK_DIR 2>/dev/null || return 0
+}
+
+# Find the next available symlink name for device. $1 is the device name 
+# from kernel (udev's %k value), $2 is the desired symlink basename 
+# (e.g. basename "cdrom" will be used to create symlinks /dev/cdrom, 
+# /dev/cdrom1, etc.)
+echo_link()
+{
+  local num
+  while [[ -e /dev/$2$num ]] &&
+        [[ "$(readlink /dev/$2$num)" != "$1" ]]; do
+    ((num+=1))
+  done
+  echo -n "$2$num "
+}
+
+lock
+
+# Output symlink name for cdrom, and then for dvd if needed.
+echo_link $1 cdrom
+[[ "$ID_CDROM_DVD" ]] && echo_link $1 dvd
+
+unlock
diff --git a/disk/udev-old/helpers/mac2name b/disk/udev-old/helpers/mac2name
new file mode 100755
index 0000000..9124da8
--- /dev/null
+++ b/disk/udev-old/helpers/mac2name
@@ -0,0 +1,18 @@
+#!/bin/bash
+# Source Mage GNU/Linux udev helper script
+# Retrieve interface name for given MAC address
+
+[[ -z $1 ]] && builtin echo Argument required! >&2 && exit 1
+
+for a in /etc/sysconfig/network/*.dev; do
+  DEVICE_MAC=
+  . $a 2>/dev/null
+  if [[ "$DEVICE_MAC" == "$1" ]]; then
+    a=${a%\.dev}
+    builtin echo ${a#\/etc\/sysconfig\/network\/}
+    exit 0
+  fi
+done
+
+builtin echo No matching device found! >&2
+exit 1
diff --git a/disk/udev-old/init.d/coldplug b/disk/udev-old/init.d/coldplug
new file mode 100644
index 0000000..cebfb79
--- /dev/null
+++ b/disk/udev-old/init.d/coldplug
@@ -0,0 +1,23 @@
+#!/bin/bash
+
+PROGRAM=/bin/false
+RUNLEVEL=DEV
+ESSENTIAL=yes
+NEEDS="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
+}
+
+stop() { exit 0; }
+restart() { exit 3; }
+reload() { exit 3; }
+force_reload() { exit 3; }
+status() { exit 3; }
diff --git a/disk/udev-old/init.d/udevd b/disk/udev-old/init.d/udevd
new file mode 100755
index 0000000..9942271
--- /dev/null
+++ b/disk/udev-old/init.d/udevd
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+PROGRAM=/sbin/udevd
+ARGS="--daemon"
+RUNLEVEL=DEV
+ESSENTIAL=yes
+NEEDS="devices"
+
+. /etc/init.d/smgl_init
+
+
diff --git a/disk/udev-old/modprobe.aliases b/disk/udev-old/modprobe.aliases
new file mode 100644
index 0000000..d8c455f
--- /dev/null
+++ b/disk/udev-old/modprobe.aliases
@@ -0,0 +1,9 @@
+# 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-old/rules/07-bindings.rules b/disk/udev-old/rules/07-bindings.rules
new file mode 100644
index 0000000..a4a03eb
--- /dev/null
+++ b/disk/udev-old/rules/07-bindings.rules
@@ -0,0 +1,2 @@
+# Bind MAC addresses to interface names if they are set with netconf
+KERNEL=="eth*", ATTRS{address}=="?*", PROGRAM="/lib/udev/mac2name %s{address}", NAME="%c"
diff --git a/disk/udev-old/rules/40-alsa.rules b/disk/udev-old/rules/40-alsa.rules
new file mode 100644
index 0000000..0d0f4c2
--- /dev/null
+++ b/disk/udev-old/rules/40-alsa.rules
@@ -0,0 +1,15 @@
+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-old/rules/50-default.rules b/disk/udev-old/rules/50-default.rules
new file mode 100644
index 0000000..87193cd
--- /dev/null
+++ b/disk/udev-old/rules/50-default.rules
@@ -0,0 +1,200 @@
+# 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"
+
+# device mapper creates its own device nodes so ignore these
+KERNEL=="dm-[0-9]*", 	OPTIONS="ignore_device"
+KERNEL=="device-mapper", NAME="mapper/control"
+
+# 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"
+
+# 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"
+
+# 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"
+
+# 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 firmware - rule generated by udev spell
+SUBSYSTEM=="firmware", ACTION=="add", RUN+="/lib/udev/firmware_helper"
diff --git a/disk/udev-old/rules/70-cdrom_perms.rules b/disk/udev-old/rules/70-cdrom_perms.rules
new file mode 100644
index 0000000..d519c0b
--- /dev/null
+++ b/disk/udev-old/rules/70-cdrom_perms.rules
@@ -0,0 +1,3 @@
+# cdrom device permissions
+ENV{ID_CDROM}=="?*", GROUP="cdrom"
+ENV{ID_CDROM_CD_R}=="?*", SYMLINK+="%c", MODE="0660", GROUP="burning"
diff --git a/disk/udev-old/rules/README b/disk/udev-old/rules/README
new file mode 100644
index 0000000..00a082a
--- /dev/null
+++ b/disk/udev-old/rules/README
@@ -0,0 +1,11 @@
+The files which name ends in ".rules" will be read by udev in lexical order.
+Any others will be ignored.
+There are some example rules in rules.examples, take a look at those for
+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.
diff --git a/disk/udev-old/rules/rules.examples b/disk/udev-old/rules/rules.examples
new file mode 100644
index 0000000..16cc41e
--- /dev/null
+++ b/disk/udev-old/rules/rules.examples
@@ -0,0 +1,42 @@
+# 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.
+# 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"
+
+# A usb camera.
+#SUBSYSTEMS=="usb", ATTRS{vendor}=="FUJIFILM", ATTRS{model}=="M100", NAME="camera%n"
+
+# USB Epson printer to be called lp_epson
+#SUBSYSTEMS="usb", ATTRS{serial}="HXOLL0012202323480", NAME="lp_epson"
+
+# USB HP printer to be called lp_hp
+#SUBSYSTEMS="usb", ATTRS{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"
+
+# sound card with PCI bus id 00:07.1 to be the second sound card
+#SUBSYSTEMS=="pci", KERNELS=="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"
+
+# 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"
+
+# ttyUSB1 should always be called visor
+#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"
+
+# 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" 
+
+# DRI devices always go into a subdirectory (as per the LSB spec)
+#KERNEL=="card*", NAME="dri/card%n"
diff --git a/disk/udev-old/udev.conf b/disk/udev-old/udev.conf
new file mode 100644
index 0000000..900642e
--- /dev/null
+++ b/disk/udev-old/udev.conf
@@ -0,0 +1,25 @@
+# udev.conf
+# The main config file for udev
+#
+# 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.
+
+
+# udev_root - where in the filesystem to place the device nodes
+udev_root="/dev/"
+
+# udev_rules - The name and location of the udev rules file
+udev_rules="/etc/udev/rules.d"
+
+# default_mode - set the default mode for all nodes that have no
+#                explicit match in the permissions file
+default_mode="0600"
+
+# default_owner - set the default owner for all nodes that have no
+#                 explicit match in the permissions file
+default_owner="root"
+
+# default_group - set the default group for all nodes that have no
+#                 explicit match in the permissions file
+default_group="root"
+
diff --git a/disk/udev-old/udev.missing b/disk/udev-old/udev.missing
new file mode 100644
index 0000000..796a150
--- /dev/null
+++ b/disk/udev-old/udev.missing
@@ -0,0 +1,31 @@
+# /etc/udev/udev.missing
+#
+# this file contains a list of devices that udev doesn't create because
+# they are missing from sysfs
+# /etc/init.d/%DEV/devices will read this file and create the device nodes
+#
+# format:
+# devname:type:major:minor:permissions:owner:group
+# devname     = name of the device, e.g. 'ppp'
+# type        = type of the device, "c" for character, "b" for block devices
+# major       = major number of the device
+# minor       = minor number of the device
+# permissions = permission string as accepted by chmod
+# owner       = owner of the device
+# group       = group of the device
+# example: ppp:c:108:0:0660:root:ppp
+#          would create /dev/ppp as a char device with major 108 minor 0,
+#          permissions set to rw-rw---- owned by root, group ppp
+#
+# lines starting with a '#' are comments and ignored
+dazuko:c:33:0:0660:root:root
+#ppp:c:108:0:0644:root:root
+nvidia0:c:195:0:0666:root:root
+nvidia1:c:195:1:0666:root:root
+nvidia2:c:195:2:0666:root:root
+nvidia3:c:195:3:0666:root:root
+nvidia4:c:195:4:0666:root:root
+nvidia5:c:195:5:0666:root:root
+nvidia6:c:195:6:0666:root:root
+nvidia7:c:195:7:0666:root:root
+nvidiactl:c:195:255:0666:root:root
diff --git a/disk/udev/BUILD b/disk/udev/BUILD
index 90cbc23..dca1df7 100755
--- a/disk/udev/BUILD
+++ b/disk/udev/BUILD
@@ -5,7 +5,8 @@ make EXTRAS="extras/run_directory extras
      ${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
diff --git a/disk/udev/CONFIGURE b/disk/udev/CONFIGURE
index e387202..84286b3 100755
--- a/disk/udev/CONFIGURE
+++ b/disk/udev/CONFIGURE
@@ -1,8 +1,6 @@
 config_query UDEV_PERSIST 'Install persistent storage rules?' n &&
 
-if [ "$RECENT_KERNEL" == "y" ]; then
-  config_query UDEV_PERSIST_INPUT 'Install persistent input rules?' n
-fi  &&
+config_query UDEV_PERSIST_INPUT 'Install persistent input rules?' n
 
 config_query_option UDEV_DEBUG 'Compile extra debugging messages?' n 'DEBUG=true' 'DEBUG=false' &&
 
diff --git a/disk/udev/CONFLICTS b/disk/udev/CONFLICTS
new file mode 100755
index 0000000..a68b971
--- /dev/null
+++ b/disk/udev/CONFLICTS
@@ -0,0 +1 @@
+conflicts udev-old n
diff --git a/disk/udev/DETAILS b/disk/udev/DETAILS
index 7718360..371a0ad 100755
--- a/disk/udev/DETAILS
+++ b/disk/udev/DETAILS
@@ -1,9 +1,5 @@
            SPELL=udev
-if [ "$RECENT_KERNEL" == "n" ]; then
-         VERSION=092
-else
          VERSION=100
-fi
           SOURCE=$SPELL-$VERSION.tar.bz2
          SOURCE2=$SOURCE.sign
 SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-$VERSION
@@ -13,7 +9,7 @@ SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL
       SOURCE_GPG="kernel.gpg:$SOURCE.sign"
         WEB_SITE=http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
          ENTERED=20030725
-      PATCHLEVEL=15
+      PATCHLEVEL=16
             DOCS="ChangeLog COPYING FAQ README docs/* RELEASE-NOTES"
       LICENSE[0]=GPL
         KEYWORDS="disk devices nodes modules"
diff --git a/disk/udev/HISTORY b/disk/udev/HISTORY
index 8158097..4d1c601 100644
--- a/disk/udev/HISTORY
+++ b/disk/udev/HISTORY
@@ -1,3 +1,12 @@
+2006-09-23 Flavien Bridault <vlaaad at 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 at sourcemage.org>
 	* DETAILS: Updated to 100
 	* rules/*.rules, 52-modules.rules: Some keys have been renamed,
diff --git a/disk/udev/INSTALL b/disk/udev/INSTALL
index 0f051b5..d477c6f 100755
--- a/disk/udev/INSTALL
+++ b/disk/udev/INSTALL
@@ -1,7 +1,5 @@
 install -d ${INSTALL_ROOT}/sys                &&
 local FILE UDEV_CFG=${INSTALL_ROOT}/etc/udev  &&
-# udev <= 092 and > 092 gives a different name for the firmware helper
-local FIRMWARE_HELPER_NAME FIRMWARE_RULE      &&
 mkdir  -p  ${UDEV_CFG}/rules.d                &&
 
 install_config_file $SCRIPT_DIRECTORY/udev.conf ${UDEV_CFG}/udev.conf &&
@@ -22,27 +20,11 @@ else
 fi  &&
 
 # install early rules
-if [ "$RECENT_KERNEL" == "n" ]; then
- install_config_file $SOURCE_DIRECTORY/etc/udev/05-udev-early.rules  \
-                           ${UDEV_CFG}/rules.d/05-udev-early.rules
-else
- install_config_file $SOURCE_DIRECTORY/etc/udev/rules.d/05-udev-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  \
+# install late rules
+install_config_file $SOURCE_DIRECTORY/etc/udev/rules.d/95-udev-late.rules  \
                            ${UDEV_CFG}/rules.d/95-udev-late.rules
-fi  &&
-
-if [ "$RECENT_KERNEL" == "n" ]; then
-  # udevstart and udevsend are nolonger installed by default. we need them for kernel < 2.6.15rc1
-  install udevsend udevstart  ${INSTALL_ROOT}/sbin  &&
-  FIRMWARE_HELPER_NAME="/lib/udev/firmware_helper"
-else
-  FIRMWARE_HELPER_NAME="firmware.sh"
-fi  &&
-
-FIRMWARE_RULE="SUBSYSTEM==\"firmware\", ACTION==\"add\", RUN+=\"$FIRMWARE_HELPER_NAME\""  &&
-echo $FIRMWARE_RULE >> ${UDEV_CFG}/rules.d/50-default.rules  &&
 
 make prefix=${INSTALL_ROOT}/ exec_prefix=${INSTALL_ROOT}/ V=true ${OPTS} install   &&
 make EXTRAS="extras/run_directory extras/cdrom_id extras/firmware" \
@@ -60,17 +42,11 @@ if [[ "$UDEV_EXTRAS" == 'y' ]]; then
   install  extras/path_id/path_id  ${INSTALL_ROOT}/lib/udev  &&
 
   if [[ "$UDEV_PERSIST" == 'y' ]]; then
-    if [ "$RECENT_KERNEL" == "n" ]; then
-       install_config_file etc/udev/60-persistent-storage.rules ${UDEV_CFG}/rules.d/60-persistent-storage.rules
-    else
        install_config_file etc/udev/rules.d/60-persistent-storage.rules ${UDEV_CFG}/rules.d/60-persistent-storage.rules
-    fi
   fi  &&
 
-  if [ "$RECENT_KERNEL" == "y" ]; then
-    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
+  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
 fi
 
diff --git a/disk/udev/PREPARE b/disk/udev/PREPARE
index f3a3aa0..e5e0a8a 100755
--- a/disk/udev/PREPARE
+++ b/disk/udev/PREPARE
@@ -8,7 +8,7 @@ if  ! grep -q install_config_file /var/l
     message  "${PROBLEM_COLOR}You don't have the latest stable Sorcery. Run
               \`sorcery update\`${DEFAULT_COLOR}"  &&
     return  1
-fi                                                                                              &&
+fi
 
 KERNEL_VERSION=$(get_kernel_version)  &&
 PATCHLEVEL=`echo $KERNEL_VERSION | cut -d. -f2`  &&
@@ -17,11 +17,8 @@ tmp=`echo $KERNEL_VERSION | cut -d. -f3 
 SUBLEVEL=${SUBLEVEL/$tmp/}  &&
 
 # kernel < 2.6.15-rc1 can't use udev > 0.93 tarballs because udevsend has been removed
-if [ $SUBLEVEL -ge 15 -a $PATCHLEVEL -ge 6 ]; then
-  RECENT_KERNEL="y"
-else
-  RECENT_KERNEL="n"  &&
-  message  "You have a kernel < 2.6.15, it is too old for latest udev."  &&
-  message  "Switching to 092..."
-fi  &&
-persistent_add RECENT_KERNEL
+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
+fi
diff --git a/disk/udev/rules/50-default.rules b/disk/udev/rules/50-default.rules
index 039c04d..e268c06 100644
--- a/disk/udev/rules/50-default.rules
+++ b/disk/udev/rules/50-default.rules
@@ -196,4 +196,5 @@ # infiniband devices
 KERNEL=="umad*", 	NAME="infiniband/%k"
 KERNEL=="issm*", 	NAME="infiniband/%k"
 
-# load firmware - rule generated by udev spell
+# Load firmwares
+SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"
diff --git a/smgl/init.d/DEPENDS b/smgl/init.d/DEPENDS
index fd2a070..c51feb4 100755
--- a/smgl/init.d/DEPENDS
+++ b/smgl/init.d/DEPENDS
@@ -3,5 +3,18 @@ if [ "$DEVICES" == "devfs" ]; then
   optional_depends  devfsd  ""  ""  \
       "to make devfs more functional and compatible with the old static /dev"
 elif [ "$DEVICES" == "udev" ]; then
-  depends udev
+  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/}  &&
+
+  # kernel < 2.6.15-rc1 can't use udev > 0.93 tarballs because udevsend has been removed
+  if [ $SUBLEVEL -ge 15 -a $PATCHLEVEL -ge 6 ]; then
+    depends udev
+  else
+    message  "You have a kernel < 2.6.15, it is too old for latest udev."  &&
+    message  "We will use udev-old spell instead..."  &&
+    depends udev-old
+  fi
 fi
diff --git a/smgl/init.d/DETAILS b/smgl/init.d/DETAILS
index 35df925..f7e3343 100755
--- a/smgl/init.d/DETAILS
+++ b/smgl/init.d/DETAILS
@@ -1,7 +1,7 @@
            SPELL=init.d
          VERSION=2.2.0
       LICENSE[0]=GPL
-      PATCHLEVEL=12
+      PATCHLEVEL=13
         KEYWORDS="smgl"
          ENTERED=20030505
            SHORT="This is the basic initalization system of SMGL"
diff --git a/smgl/init.d/HISTORY b/smgl/init.d/HISTORY
index 604758b..53357b6 100644
--- a/smgl/init.d/HISTORY
+++ b/smgl/init.d/HISTORY
@@ -1,3 +1,8 @@
+2006-09-23 Flavien Bridault <vlaaad at sourcemage.org>
+	* DEPENDS: Check which udev spell we should cast according to the 
+	  kernel version
+	* DETAILS: PATCHLEVEL++
+
 2006-09-21 Juuso Alasuutari <iuso at sourcemage.org>
 	* DETAILS: [automated] Removed BUILD_API=2.
 



More information about the SM-Commit mailing list