2020-11-03 19:43:20 -08:00

222 lines
3.4 KiB
Bash
Executable File

#!/bin/sh
# mktazdevs.sh: Make device files for SliTaz GNU/Linux
# 2007/01/25
#
# Script functions.
status()
{
local CHECK=$?
echo -en "\033[68G"
if [ $CHECK = 0 ] ; then
echo -e "\033[1mOK\033[0m"
else
echo -e "\033[1mFailed\033[0m"
fi
}
# We do our work in the dev/ directory.
if [ -z "$1" ] ; then
echo "usage: `basename $0` path/to/dev"
exit 1
fi
# script start.
echo -n "Moving to $1... "
cd $1
status
# make usfull directories.
echo -n "Starting to build directories... "
mkdir pts input net usb shm
status
# script start.
#
echo -n "Starting to build devices... "
# input devs.
#
mknod input/event0 c 13 64
mknod input/event1 c 13 65
mknod input/event2 c 13 66
mknod input/mouse0 c 13 32
mknod input/mice c 13 63
mknod input/ts0 c 254 0
# miscellaneous one-of-a-kind stuff.
#
mknod logibm c 10 0
mknod psaux c 10 1
mknod inportbm c 10 2
mknod atibm c 10 3
mknod console c 5 1
mknod full c 1 7
mknod kmem c 1 2
mknod mem c 1 1
mknod null c 1 3
mknod port c 1 4
mknod random c 1 8
mknod urandom c 1 9
mknod zero c 1 5
mknod rtc c 10 135
mknod sr0 b 11 0
mknod sr1 b 11 1
mknod agpgart c 10 175
mknod dri c 10 63
mknod ttyS0 c 4 64
mknod audio c 14 4
mknod beep c 10 128
mknod ptmx c 5 2
mknod nvram c 10 144
ln -s /proc/kcore core
# net/tun device
#
mknod net/tun c 10 200
# framebuffer devs.
#
mknod fb0 c 29 0
mknod fb1 c 29 32
mknod fb2 c 29 64
mknod fb3 c 29 96
mknod fb4 c 29 128
mknod fb5 c 29 160
mknod fb6 c 29 192
# usb/hiddev
#
mknod usb/hiddev0 c 180 96
mknod usb/hiddev1 c 180 97
mknod usb/hiddev2 c 180 98
mknod usb/hiddev3 c 180 99
mknod usb/hiddev4 c 180 100
mknod usb/hiddev5 c 180 101
mknod usb/hiddev6 c 180 102
# IDE HD devs
# with a fiew concievable partitions; you can do
# more of them yourself as you need 'em.
#
# hda devs
#
mknod hda b 3 0
mknod hda1 b 3 1
mknod hda2 b 3 2
mknod hda3 b 3 3
mknod hda4 b 3 4
mknod hda5 b 3 5
mknod hda6 b 3 6
mknod hda7 b 3 7
mknod hda8 b 3 8
mknod hda9 b 3 9
# hdb devs
#
mknod hdb b 3 64
mknod hdb1 b 3 65
mknod hdb2 b 3 66
mknod hdb3 b 3 67
mknod hdb4 b 3 68
mknod hdb5 b 3 69
mknod hdb6 b 3 70
mknod hdb7 b 3 71
mknod hdb8 b 3 72
mknod hdb9 b 3 73
# hdc and hdd with cdrom symbolic link.
#
mknod hdc b 22 0
mknod hdd b 22 64
ln -s hdc cdrom
# sda devs
#
mknod sda b 8 0
mknod sda1 b 8 1
mknod sda2 b 8 2
mknod sda3 b 8 3
mknod sda4 b 8 4
mknod sda5 b 8 5
mknod sda6 b 8 6
mknod sda7 b 8 7
mknod sda8 b 8 8
mknod sda9 b 8 9
ln -s sda1 flash
# sdb devs
#
mknod sdb b 8 16
mknod sdb1 b 8 17
mknod sdb2 b 8 18
mknod sdb3 b 8 19
mknod sdb4 b 8 20
mknod sdb5 b 8 21
mknod sdb6 b 8 22
mknod sdb7 b 8 23
mknod sdb8 b 8 24
mknod sdb9 b 9 25
# Floppy device.
#
mknod fd0 b 2 0
# loop devs
#
for i in `seq 0 7`; do
mknod loop$i b 7 $i
done
# ram devs
#
for i in `seq 0 7`; do
mknod ram$i b 1 $i
done
ln -s ram1 ram
# tty devs
#
mknod tty c 5 0
for i in `seq 0 7`; do
mknod tty$i c 4 $i
done
# virtual console screen devs
#
for i in `seq 0 7`; do
mknod vcs$i b 7 $i
done
ln -s vcs0 vcs
# virtual console screen w/ attributes devs
#
for i in `seq 0 7`; do
mknod vcsa$i b 7 $i
done
ln -s vcsa0 vcsa
status
# Symlinks.
#
ln -snf /proc/self/fd fd
ln -snf /proc/self/fd/0 stdin
ln -snf /proc/self/fd/1 stdout
ln -snf /proc/self/fd/2 stderr
# Changes permissions.
#
echo -n "Changing permissions on devices... "
chmod 0666 ptmx
chmod 0666 null
chmod 0622 console
chmod 0666 tty*
status
# script end
echo ""
echo "All devices are build..."
date