aboutsummaryrefslogtreecommitdiffstats
path: root/udev-lfs/contrib/debian/write_cd_aliases
diff options
context:
space:
mode:
Diffstat (limited to 'udev-lfs/contrib/debian/write_cd_aliases')
-rw-r--r--udev-lfs/contrib/debian/write_cd_aliases120
1 files changed, 0 insertions, 120 deletions
diff --git a/udev-lfs/contrib/debian/write_cd_aliases b/udev-lfs/contrib/debian/write_cd_aliases
deleted file mode 100644
index ea8eeb7d8..000000000
--- a/udev-lfs/contrib/debian/write_cd_aliases
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/bin/sh -e
-
-# Updated for LFS by B. Dubbs, 2012-09-23
-# Fix RULES_LOCK location
-
-
-RULES_FILE="/etc/udev/rules.d/82-persistent-cd.rules"
-
-##############################################################################
-lock_rules_file() {
- RULES_LOCK="/run/udev/lock-${RULES_FILE##*/}"
-
- if [ ! -d /run/udev/ ]; then
- echo "write_cd_aliases: /run/udev does not exist!" >&2
- exit 2
- fi
-
- retry=10
- while ! mkdir $RULES_LOCK 2> /dev/null; do
- if [ $retry -eq 0 ]; then
- echo "Cannot lock $RULES_FILE!" >&2
- exit 2
- fi
- sleep 1
- retry=$(($retry - 1))
- done
-}
-
-unlock_rules_file() {
- rmdir $RULES_LOCK || true
-}
-
-##############################################################################
-find_next_available() {
- # use echo to convert newlines to spaces
- local links=`echo $(find_all_symlinks $1)`
- local basename=${links%%[ 0-9]*}
- local max=-1
- for name in $links; do
- local num=${name#$basename}
- [ "$num" ] || num=0
- [ $num -gt $max ] && max=$num
- done
-
- max=$(($max + 1))
- # "name0" actually is just "name"
- [ $max -eq 0 ] && return
- echo "$max"
-}
-
-find_all_symlinks() {
- local linkre="$1"
- local match="$2"
-
- [ -e $RULES_FILE ] || return
-
- local search='.*[[:space:],]SYMLINK+="\('"$linkre"'\)"[[:space:]]*\(,.*\|\\\|\)$'
-
- sed -n -e "${match}s/${search}/\1/p" $RULES_FILE
-}
-
-write_rule() {
- local match="$1"
- local link="$2"
- local comment="$3"
-
- [ -e "$RULES_FILE" ] || PRINT_HEADER=1
- {
- if [ "$PRINT_HEADER" ]; then
- PRINT_HEADER=
- echo "# This file was automatically generated by the $0"
- echo "# program, probably run by the 83-cdrom.rules rules file."
- echo "#"
- echo "# You can modify it, as long as you keep each rule on a single line"
- echo "# and set the \$GENERATED variable."
- echo ""
- fi
-
- [ "$comment" ] && echo "# $comment"
- echo "ACTION==\"add\", SUBSYSTEM==\"block\", $match, ENV{ID_CDROM}==\"1\", SYMLINK+=\"$link\", ENV{GENERATED}=\"1\""
- } >> $RULES_FILE
- SYMLINKS="$SYMLINKS $link"
-}
-
-##############################################################################
-if [ -z "$DEVPATH" ]; then
- echo "Missing \$DEVPATH." >&2
- exit 1
-fi
-if [ -z "$ID_CDROM" ]; then
- echo "$DEVPATH is not a CD reader." >&2
- exit 1
-fi
-
-# Prevent parallel processes from modifying the file at the same time.
-lock_rules_file
-
-link_num=$(find_next_available 'cdrom[0-9]*')
-
-#match="ENV{ID_PATH}==\"$ID_PATH\""
-
-#kernel=${DEVPATH##*/}
-#match="KERNEL==\"$kernel\""
-
-id=${PHYSDEVPATH##*/}
-match="BUS==\"$PHYSDEVBUS\", ID==\"$id\""
-
-comment="$ID_MODEL ($ID_PATH)"
-
- write_rule "$match" "cdrom$link_num" "$comment"
-[ "$ID_CDROM_CD_RW" ] && write_rule "$match" "cdrw$link_num"
-[ "$ID_CDROM_DVD" ] && write_rule "$match" "dvd$link_num"
-[ "$ID_CDROM_DVD_RW" ] && write_rule "$match" "dvdrw$link_num"
-
-unlock_rules_file
-
-echo $SYMLINKS
-
-exit 0
-