X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=MAKEDEV;h=c8b1e133986134662c36b032716f055c881aa688;hb=c05e4a7131051c445516f91e88b3a2ad6db2dbeb;hp=62d6ee6e59c392286ce84024334f6c3518765836;hpb=0d0b6515a731474802c86242a8ef1c8e2f62b149;p=debian%2Fmakedev diff --git a/MAKEDEV b/MAKEDEV index 62d6ee6..c8b1e13 100644 --- a/MAKEDEV +++ b/MAKEDEV @@ -31,6 +31,7 @@ scanner=" root root 0666" coda=" root root 0600" ipsec=" root root 0200" readable=" root root 0444" + lirc=" root lirc 0640" MAXVT=63 @@ -44,10 +45,21 @@ major_lp=6 #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# -# if udev is running, and we're in /dev, relocate ourselves -if [ -d /.dev/ ] && [ "`pwd`" = /dev ] && [ -e /proc/mounts ] \ - && grep -qE '^[^ ]+ /\.dev' /proc/mounts; then - cd /.dev/ +# try to do the right things if udev is running +if [ "$WRITE_ON_UDEV" ]; then + : +elif [ -d /dev/.static/dev/ ] && [ "`pwd`" = /dev ] && [ -e /proc/mounts ] \ + && grep -qE '^[^ ]+ /dev/\.static/dev' /proc/mounts; then + echo "udev active, devices will be created in /dev/.static/dev/" + cd /dev/.static/dev/ +elif [ -d /.dev/ ] && [ "`pwd`" = /dev ] && [ -e /proc/mounts ] \ + && grep -qE '^[^ ]+ /\.dev' /proc/mounts; then + echo "udev active, devices will be created in /.dev/" + cd /.dev/ +elif [ -d .udevdb/ -o -d .udev/ ] && [ "`pwd`" = /dev ]; then + echo ".udevdb or .udev presence implies active udev. Aborting MAKEDEV invocation." + # use exit 0, not 1, so postinst scripts don't fail on this + exit 0 fi #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# @@ -103,7 +115,8 @@ opts="${opt_n:+-n} ${opt_v:+-v} ${opt_d:+-d}" #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# devicename () { # translate device names to something safe - echo "$*" | sed -e 's/[^A-Za-z0-9_]/_/g' + # A-Z is not full alphabet in all locales (e.g. in et_EE) + echo "$*" | LC_ALL=C sed -e 's/[^A-Za-z0-9_]/_/g' } makedev () { # usage: makedev name [bcu] major minor owner group mode @@ -216,7 +229,7 @@ cvt () { do case "$1" in mem|tty|ttyp|cua|cub|cui) ;; - hd) (for d in a b c d e f g h ; do + hd) (for d in a b c d e f g h i j k l m n o p ; do echo -n hd$d " " done) ; echo ;; @@ -230,7 +243,10 @@ cvt () { ide7) echo hdo hdp ;; ide8) echo hdq hdr ;; ide9) echo hds hdt ;; - sd) echo sda sdb sdc sdd ;; + sd) (for d in a b c d e f g h i j k l m n o p ; do + echo -n sd$d " " + done) ; echo + ;; dasd) (for d in a b c d e f g h i j k l m \ n o p q r s t u v w x y z ; do echo -n dasd$d " " @@ -242,7 +258,6 @@ cvt () { st) echo st0 ;; xd) echo xda xdb ;; ad) echo ada adb ;; - fd) echo fd0 fd1 ;; lp) echo lp ;; mt) echo ftape ;; qft) echo ftape ;; @@ -293,15 +308,19 @@ cvt () { bluetooth) echo bluetooth ;; lvm) ;; # taken care of by LVM userspace tools ramdisk) echo ram ;; - *) echo "$0: don't know what \"$1\" is" >&2 ;; + null) echo std ;; + zero) echo std ;; +# *) echo "$0: don't know what \"$1\" is" >&2 ;; + *) echo $1 esac shift done } -for arg in $* +for arg in `cvt $*` do -# case `cvt $arg` in + # this is to make the case patterns work as expected in all locales + LC_ALL=C case $arg in generic) # pick the right generic- using dpkg's knowledge @@ -309,13 +328,13 @@ do alpha) $0 $opts generic-alpha ;; - arm) + arm|armeb|armel) $0 $opts generic-arm ;; hppa) $0 $opts generic-hppa ;; - i386) + i386|lpia) $0 $opts generic-i386 ;; amd64) @@ -358,9 +377,8 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd + $0 $opts hd sd $0 $opts xda xdb - $0 $opts sda sdb sdc sdd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -378,9 +396,8 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd + $0 $opts hd sd $0 $opts xda xdb - $0 $opts sda sdb sdc sdd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -398,8 +415,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -418,9 +434,8 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd + $0 $opts hd sd $0 $opts xda xdb - $0 $opts sda sdb sdc sdd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -442,8 +457,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -462,8 +476,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts sg $0 $opts ada adb adc add ade adf @@ -481,8 +494,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -499,8 +511,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -517,8 +528,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -552,8 +562,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -571,8 +580,7 @@ do $0 $opts std $0 $opts fd $0 $opts fd0 fd1 - $0 $opts hda hdb hdc hdd - $0 $opts sda sdb sdc sdd + $0 $opts hd sd $0 $opts scd0 scd1 $0 $opts st0 st1 $0 $opts sg @@ -599,7 +607,7 @@ do symlink core $procfs/kcore makedev full c 1 7 $public makedev random c 1 8 $public - makedev urandom c 1 9 $readable + makedev urandom c 1 9 $public makedev tty c 5 0 $tty $0 $opts ram $0 $opts loop @@ -614,6 +622,12 @@ do makedev scc$unit c 34 $unit $system done ;; + mtd) + for unit in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + do + makedev mtd$unit c 90 `math $unit \* 2` $system + done + ;; bc) for unit in 0 1 2 3 do @@ -714,6 +728,10 @@ do makedev video1394/$i c 171 `math 16 + $i` $video done ;; + alsa) + echo "You requested 'alsa' devices. Please install the alsa-base package instead," + echo "which creates and maintains device information for ALSA." + ;; nvram) makedev nvram c 10 144 $mouse ;; @@ -1045,10 +1063,14 @@ do major=`Major $arg 10` || continue makedev $arg c $major 175 $video ;; - hwrandom) + hwrng) major=`Major $arg 10` || continue makedev $arg c $major 183 $private ;; + mcelog) + major=`Major $arg 10` || continue + makedev $arg c $major 227 $private + ;; cpu|microcode) mkdir -p cpu makedev cpu/microcode c 10 184 $private @@ -1073,6 +1095,9 @@ do irnet) makedev irnet c 10 187 $system ;; + cbm) + makedev cbm c 10 177 $floppy + ;; misc) major=`Major mouse 10` || continue makedev logibm c $major 0 $mouse @@ -1106,7 +1131,11 @@ do makedev mergemem c $major 153 $mouse makedev pmu c $major 154 $mouse ;; + fuse) + makedev fuse c 10 229 $system + ;; pmu) + major=`Major mouse 10` || continue makedev pmu c $major 154 $mouse ;; thinkpad) @@ -1128,6 +1157,10 @@ do systrace) makedev systrace c 10 226 $private ;; + uinput) + mkdir -p input + makedev input/uinput c 10 223 $mouse + ;; js) major=`Major Joystick 13` || continue for unit in 0 1 2 3 @@ -1194,7 +1227,7 @@ do base=`index ab $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major `math $base + $part` $disk done @@ -1205,7 +1238,7 @@ do base=`index cd $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1216,7 +1249,7 @@ do base=`index ef $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1227,7 +1260,7 @@ do base=`index gh $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1238,7 +1271,7 @@ do base=`index ij $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1249,7 +1282,7 @@ do base=`index kl $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1260,7 +1293,7 @@ do base=`index mn $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1271,7 +1304,7 @@ do base=`index op $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1282,7 +1315,7 @@ do base=`index qr $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1293,7 +1326,7 @@ do base=`index st $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk - for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + for part in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 do makedev hd$unit$part b $major $(( $base + $part )) $disk done @@ -1591,7 +1624,8 @@ do ;; md) major=`Major md 9` || continue - for part in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + for part in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 \ + 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 do makedev md$part b $major $part $disk done @@ -1650,11 +1684,12 @@ do done ;; pktcdvd) - major=97 - for unit in 0 1 2 3 - do - makedev pktcdvd$unit b $major $unit $cdrom - done + echo "pktcdvd major number is now dynamic, taking no action" + # major=97 + # for unit in 0 1 2 3 + # do + # makedev pktcdvd$unit b $major $unit $cdrom + # done ;; cfs0) makedev cfs0 c 67 0 $coda @@ -2067,6 +2102,12 @@ do makedev pf$i b 47 $i $floppy done ;; + lirc) + mknod lirc c 61 0 $lirc + for i in d m; do + makedev lirc${i} p $lirc + done + ;; update) devices= if [ ! -f $procfs/devices ]