slitaz-boot-scripts diff etc/init.d/bootopts.sh @ rev 393
network.sh: better handle WEP connections, handle EAP, store Wi-Fi neworks by default; network.conf: migrate to extended format to support EAP arguments, and few more.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Mon Mar 23 02:01:21 2015 +0200 (2015-03-23) |
parents | ecf17d3e06f4 |
children | dcdb496ee31f |
line diff
1.1 --- a/etc/init.d/bootopts.sh Sun Jan 11 11:12:24 2015 +0100 1.2 +++ b/etc/init.d/bootopts.sh Mon Mar 23 02:01:21 2015 +0200 1.3 @@ -16,15 +16,15 @@ 1.4 } 1.5 1.6 # Parse /proc/cmdline for boot options. 1.7 -echo "Checking for SliTaz cmdline options..." 1.8 +echo 'Checking for SliTaz cmdline options...' 1.9 1.10 # Default user account without password (uid=1000). In live mode the option 1.11 # user=name can be used, but user must be added before home= to have home dir. 1.12 # This option is not handled by a loop and case like others and has no 1.13 # effect on an installed system. 1.14 -if ! grep -q "100[0-9]:100" /etc/passwd; then 1.15 +if ! grep -q '100[0-9]:100' /etc/passwd; then 1.16 1.17 - if fgrep -q "user=" /proc/cmdline; then 1.18 + if fgrep -q 'user=' /proc/cmdline; then 1.19 USER=$(cat /proc/cmdline | sed 's/.*user=\([^ ]*\).*/\1/') 1.20 # Avoid usage of an existing system user or root. 1.21 if grep -q ^$USER /etc/passwd; then 1.22 @@ -33,38 +33,37 @@ 1.23 else 1.24 USER=tux 1.25 fi 1.26 - 1.27 + 1.28 # Make sure we have users applications.conf 1.29 - if [ ! -f "/etc/skel/.config/slitaz/applications.conf" -a \ 1.30 - -f "/etc/slitaz/applications.conf" ]; then 1.31 + if [ ! -f '/etc/skel/.config/slitaz/applications.conf' -a \ 1.32 + -f '/etc/slitaz/applications.conf' ]; then 1.33 mkdir -p /etc/skel/.config/slitaz 1.34 cp /etc/slitaz/applications.conf /etc/skel/.config/slitaz 1.35 fi 1.36 - 1.37 + 1.38 echo -n "Configuring user and group: $USER..." 1.39 - adduser -D -s /bin/sh -g "SliTaz User" -G users -h /home/$USER $USER 1.40 + adduser -D -s /bin/sh -g 'SliTaz User' -G users -h /home/$USER $USER 1.41 passwd -d $USER >/dev/null 1.42 - for group in audio cdrom video tty plugdev disk 1.43 - do 1.44 - addgroup $USER ${group} 1.45 + for group in audio cdrom video tty plugdev disk; do 1.46 + addgroup $USER $group 1.47 done 1.48 status 1.49 - 1.50 + 1.51 # Slim default user 1.52 if [ -f /etc/slim.conf ]; then 1.53 - sed -i s/"default_user .*"/"default_user $USER"/ /etc/slim.conf 1.54 + sed -i "s|default_user .*|default_user $USER|" /etc/slim.conf 1.55 fi 1.56 fi 1.57 1.58 -for opt in $(cat /proc/cmdline) 1.59 -do 1.60 +for opt in $(cat /proc/cmdline); do 1.61 case $opt in 1.62 eject) 1.63 # Eject cdrom. 1.64 eject /dev/cdrom ;; 1.65 autologin) 1.66 # Autologin option to skip first graphic login prompt. 1.67 - echo "auto_login yes" >> /etc/slim.conf ;; 1.68 + sed -i '/auto_login .*/d' /etc/slim.conf 1.69 + echo 'auto_login yes' >> /etc/slim.conf ;; 1.70 lang=*) 1.71 # Check for a specified locale (lang=*). 1.72 LANG=${opt#lang=} 1.73 @@ -79,7 +78,9 @@ 1.74 # Check for a specified console font (font=*). 1.75 FONT=${opt#font=} 1.76 echo -n "Setting console font to: $FONT..." 1.77 - for con in 1 2 3 4 5 6; do setfont $FONT -C /dev/tty$con; done 1.78 + for con in 1 2 3 4 5 6; do 1.79 + setfont $FONT -C /dev/tty$con 1.80 + done 1.81 status ;; 1.82 home=*) 1.83 # Check for a specified home partition (home=*) and check for 1.84 @@ -88,32 +89,37 @@ 1.85 DEVICE=${opt#home=} 1.86 [ "$DEVICE" = "usb" ] && DEVICE="$(usb_device)1" 1.87 echo "Home has been specified to $DEVICE..." 1.88 - DEVID=`/sbin/blkid | sed 'p;s/"//g' | fgrep "$DEVICE" | sed 's/:.*//;q'` 1.89 + 1.90 + DEVID=$(/sbin/blkid | sed 'p;s/"//g' | fgrep "$DEVICE" | sed 's/:.*//;q') 1.91 if [ -z "$DEVID" ]; then 1.92 - USBDELAY=`cat /sys/module/usb_storage/parameters/delay_use` 1.93 + USBDELAY=$(cat /sys/module/usb_storage/parameters/delay_use) 1.94 USBDELAY=$((2+$USBDELAY)) 1.95 echo "Sleeping $USBDELAY s to let the kernel detect the device... " 1.96 sleep $USBDELAY 1.97 fi 1.98 - USER=`cat /etc/passwd | sed '/:1000:/!d;s/:.*//;q'` 1.99 + 1.100 + USER=$(cat /etc/passwd | sed '/:1000:/!d;s/:.*//;q') 1.101 DEVID=$DEVICE 1.102 if [ -x /sbin/blkid ]; then 1.103 # Can be a label, uuid, type or devname. DEVID gives us first: /dev/name. 1.104 - DEVID=`/sbin/blkid | sed 'p;s/"//g' | fgrep "$DEVICE" | sed 's/:.*//;q'` 1.105 + DEVID=$(/sbin/blkid | sed 'p;s/"//g' | fgrep "$DEVICE" | sed 's/:.*//;q') 1.106 fi 1.107 DEVID=${DEVID##*/} 1.108 + 1.109 if [ -n "$DEVID" ] && fgrep -q "$DEVID" /proc/partitions ; then 1.110 echo "Mounting /home on /dev/$DEVID... " 1.111 [ -d /home/$USER ] && mv /home/$USER /tmp/$USER-files 1.112 mount /dev/$DEVID /home && 1.113 case "$(/sbin/blkid | grep /dev/$DEVID:)" in 1.114 - *\"ntfs\"*|*\"vfat\"*) mount.posixovl -F /home -- -oallow_other -odefault_permissions -osuid ;; 1.115 + *\"ntfs\"*|*\"vfat\"*) 1.116 + mount.posixovl -F /home -- -oallow_other -odefault_permissions -osuid ;; 1.117 esac 1.118 mount /home -o remount,uid=1000,gid=100 2>/dev/null 1.119 + 1.120 # Check if swap file must be generated in /home: swap=size (Mb). 1.121 # This option is only used within home=device. 1.122 - if grep -q "swap=[1-9]*" /proc/cmdline; then 1.123 - SWAP_SIZE=`sed 's/.*swap=\([^ ]*\).*/\1/' < /proc/cmdline` 1.124 + if grep -q 'swap=[1-9]*' /proc/cmdline; then 1.125 + SWAP_SIZE=$(sed 's/.*swap=\([^ ]*\).*/\1/' < /proc/cmdline) 1.126 # DD to gen a virtual disk. 1.127 echo "Generating swap file: /home/swap ($SWAP_SIZE)..." 1.128 dd if=/dev/zero of=/home/swap bs=1M count=$SWAP_SIZE 1.129 @@ -124,6 +130,7 @@ 1.130 else 1.131 echo "Unable to find $DEVICE... " 1.132 fi 1.133 + 1.134 # Move all user dir if needed. 1.135 if [ ! -d "/home/$USER" ] ; then 1.136 mv /tmp/$USER-files /home/$USER 1.137 @@ -131,35 +138,37 @@ 1.138 else 1.139 rm -rf /tmp/$USER-files 1.140 fi 1.141 + 1.142 # Install all packages in /home/boot/packages. In live CD and 1.143 # USB mode the option home= mounts the device on /home, so we 1.144 # already have a boot directory with the Kernel and rootfs. 1.145 - if [ -d "/home/boot/packages" ]; then 1.146 - for pkg in /home/boot/packages/*.tazpkg 1.147 - do 1.148 + if [ -d '/home/boot/packages' ]; then 1.149 + for pkg in /home/boot/packages/*.tazpkg; do 1.150 tazpkg install $pkg 1.151 done 1.152 fi 1.153 + 1.154 # We can have custom files in /home/boot/rootfs to overwrite 1.155 # the one packed into the Live system. 1.156 - if [ -d "/home/boot/rootfs" ]; then 1.157 + if [ -d '/home/boot/rootfs' ]; then 1.158 cp -a /home/boot/rootfs/* / 1.159 fi ;; 1.160 laptop) 1.161 # Enable Kernel Laptop mode. 1.162 - echo "5" > /proc/sys/vm/laptop_mode ;; 1.163 + echo '5' > /proc/sys/vm/laptop_mode ;; 1.164 mount) 1.165 # Mount all ext3 partitions found (opt: mount). 1.166 + 1.167 # Get the list of partitions. 1.168 - DEVICES_LIST=`fdisk -l | sed '/83 Linux/!d;s/ .*//'` 1.169 + DEVICES_LIST=$(fdisk -l | sed '/83 Linux/!d;s/ .*//') 1.170 + 1.171 # Mount filesystems rw. 1.172 - for device in $DEVICES_LIST 1.173 - do 1.174 + for device in $DEVICES_LIST; do 1.175 name=${device#/dev/} 1.176 # Device can be already used by home=usb. 1.177 if ! mount | grep ^$device >/dev/null; then 1.178 echo "Mounting partition: $name on /mnt/$name" 1.179 - mkdir /mnt/$name 1.180 + mkdir -p /mnt/$name 1.181 mount $device /mnt/$name 1.182 fi 1.183 done ;; 1.184 @@ -172,7 +181,7 @@ 1.185 PKGDEV=$(blkid /dev/cdrom | grep "$PKGSIGN" | cut -d: -f1) 1.186 if [ -n "$PKGDEV" ]; then 1.187 echo -n "Mounting packages archive from $PKGDEV..." 1.188 - mkdir /packages && mount -t iso9660 -o ro $PKGDEV /packages 1.189 + mkdir -p /packages; mount -t iso9660 -o ro $PKGDEV /packages 1.190 status 1.191 /packages/install.sh 1.192 fi ;;