From: Fabio Erculiani Date: Sun, 11 Sep 2011 07:42:30 +0000 (+0200) Subject: syntax: drop parse_opt usage and crufty, deprecated subshelling through `` X-Git-Tag: v3.4.19~9 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d6696d0df6e1b31bf169fc34e2a9b0579f2af72d;p=genkernel.git syntax: drop parse_opt usage and crufty, deprecated subshelling through `` These changes have been ported from official Gentoo LiveDVD --- diff --git a/ChangeLog b/ChangeLog index fd11f8e..fbc1418 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,10 @@ # Distributed under the GPL v2 # $Id$ + 11 Sep 2011; Fabio Erculiani defaults/initrd.scripts, + defaults/linuxrc: + drop parse_opt usage and crufty, deprecated subshelling through + 30 Aug 2011; Sebastian Pipping defaults/initrd.scripts: Fix quoting issue (bug #380729). diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index bf31042..da8cb01 100755 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -6,14 +6,6 @@ backup() { echo -ne "\033[0G\033[0K" } -parse_opt() { - case "$1" in - *\=*) - echo "$1" | cut -d= -f2- - ;; - esac -} - modules_load() { for module in $* do diff --git a/defaults/linuxrc b/defaults/linuxrc index 7aa11e3..ee74d76 100755 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -33,7 +33,7 @@ fi quiet_kmsg -CMDLINE=`cat /proc/cmdline` +CMDLINE=$(cat /proc/cmdline) # Scan CMDLINE for any specified real_root= or cdroot arguments FAKE_ROOT='' REAL_ROOTFLAGS='' @@ -42,41 +42,41 @@ CRYPT_SILENT=0 for x in ${CMDLINE} do case "${x}" in - real_root\=*) - REAL_ROOT=`parse_opt "${x}"` + real_root=*) + REAL_ROOT=${x#*=} ;; - root\=*) - FAKE_ROOT=`parse_opt "${x}"` + root=*) + FAKE_ROOT=${x#*=} ;; - subdir\=*) - SUBDIR=`parse_opt "${x}"` + subdir=*) + SUBDIR=${x#*=} ;; - real_init\=*) - REAL_INIT=`parse_opt "${x}"` + real_init=*) + REAL_INIT=${x#*=} ;; - init_opts\=*) - INIT_OPTS=`parse_opt "${x}"` + init_opts=*) + INIT_OPTS=${x#*=} ;; # Livecd options cdroot) CDROOT=1 ;; - cdroot\=*) + cdroot=*) CDROOT=1 - CDROOT_DEV=`parse_opt "${x}"` + CDROOT_DEV=${x#*=} ;; - cdroot_type\=*) - CDROOT_TYPE=`parse_opt "${x}"` + cdroot_type=*) + CDROOT_TYPE=${x#*=} ;; # Start livecd loop, looptype options - loop\=*) - LOOP=`parse_opt "${x}"` + loop=*) + LOOP=${x#*=} ;; - looptype\=*) - LOOPTYPE=`parse_opt "${x}"` + looptype=*) + LOOPTYPE=${x#*=} ;; - isoboot\=*) - ISOBOOT=`parse_opt "${x}"` + isoboot=*) + ISOBOOT=${x#*=} ;; # Start Volume manager options dolvm) @@ -92,8 +92,8 @@ do dodmraid) USE_DMRAID_NORMAL=1 ;; - dodmraid\=*) - DMRAID_OPTS=`parse_opt "${x}"` + dodmraid=*) + DMRAID_OPTS=${x#*=} USE_DMRAID_NORMAL=1 ;; # Debug Options @@ -101,102 +101,102 @@ do DEBUG='yes' ;; # Scan delay options - scandelay\=*) - SDELAY=`parse_opt "${x}"` + scandelay=*) + SDELAY=${x#*=} ;; scandelay) SDELAY=3 ;; # Module no-loads - doload\=*) - MDOLIST=`parse_opt "${x}"` - MDOLIST="`echo ${MDOLIST} | sed -e 's/,/ /g'`" + doload=*) + MDOLIST=${x#*=} + MDOLIST=$(echo ${MDOLIST} | sed -e 's/,/ /g'`) ;; nodetect) NODETECT=1 ;; - noload\=*) - MLIST=`parse_opt "${x}"` - MLIST="`echo ${MLIST} | sed -e 's/,/ /g'`" + noload=*) + MLIST=${x#*=} + MLIST="$(echo ${MLIST} | sed -e 's/,/ /g')" export MLIST ;; # Redirect output to a specific tty - CONSOLE\=*|console\=*) - CONSOLE=`parse_opt "${x}"` - CONSOLE=`basename ${CONSOLE}` + CONSOLE=*|console=*) + CONSOLE=${x#*=} + CONSOLE=$(basename ${CONSOLE}) # exec >${CONSOLE} <${CONSOLE} 2>&1 ;; # /dev/md - lvmraid\=*) - RAID_DEVICES="`parse_opt ${x}`" - RAID_DEVICES="`echo ${RAID_DEVICES} | sed -e 's/,/ /g'`" + lvmraid=*) + RAID_DEVICES="${x#*=}" + RAID_DEVICES="$(echo ${RAID_DEVICES} | sed -e 's/,/ /g')" USE_LVM_NORMAL=1 ;; - part\=*) - MDPART=`parse_opt "${x}"` + part=*) + MDPART=${x#*=} ;; # NFS - ip\=*) - IP=`parse_opt "${x}"` + ip=*) + IP=${x#*=} ;; - nfsroot\=*) - NFSROOT=`parse_opt "${x}"` + nfsroot=*) + NFSROOT=${x#*=} ;; # iSCSI - iscsi_initiatorname\=*) - ISCSI_INITIATORNAME=`parse_opt "${x}"` + iscsi_initiatorname=*) + ISCSI_INITIATORNAME=${x#*=} ;; - iscsi_target\=*) - ISCSI_TARGET=`parse_opt "${x}"` + iscsi_target=*) + ISCSI_TARGET=${x#*=} ;; - iscsi_tgpt\=*) - ISCSI_TGPT=`parse_opt "${x}"` + iscsi_tgpt=*) + ISCSI_TGPT=${x#*=} ;; - iscsi_address\=*) - ISCSI_ADDRESS=`parse_opt "${x}"` + iscsi_address=*) + ISCSI_ADDRESS=${x#*=} ;; - iscsi_port\=*) - ISCSI_PORT=`parse_opt "${x}"` + iscsi_port=*) + ISCSI_PORT=${x#*=} ;; - iscsi_username\=*) - ISCSI_USERNAME=`parse_opt "${x}"` + iscsi_username=*) + ISCSI_USERNAME=${x#*=} ;; - iscsi_password\=*) - ISCSI_PASSWORD=`parse_opt "${x}"` + iscsi_password=*) + ISCSI_PASSWORD=${x#*=} ;; - iscsi_username_in\=*) - ISCSI_USERNAME_IN=`parse_opt "${x}"` + iscsi_username_in=*) + ISCSI_USERNAME_IN=${x#*=} ;; - iscsi_password_in\=*) - ISCSI_PASSWORD_IN=`parse_opt "${x}"` + iscsi_password_in=*) + ISCSI_PASSWORD_IN=${x#*=} ;; - iscsi_debug\=*) - ISCSI_DEBUG=`parse_opt "${x}"` + iscsi_debug=*) + ISCSI_DEBUG=${x#*=} ;; iscsi_noibft) ISCSI_NOIBFT=1 ;; # Crypto - crypt_root\=*) - CRYPT_ROOT=`parse_opt "${x}"` + crypt_root=*) + CRYPT_ROOT=${x#*=} ;; - crypt_swap\=*) - CRYPT_SWAP=`parse_opt "${x}"` + crypt_swap=*) + CRYPT_SWAP=${x#*=} ;; - root_key\=*) - CRYPT_ROOT_KEY=`parse_opt "${x}"` + root_key=*) + CRYPT_ROOT_KEY=${x#*=} ;; - root_keydev\=*) - CRYPT_ROOT_KEYDEV=`parse_opt "${x}"` + root_keydev=*) + CRYPT_ROOT_KEYDEV=${x#*=} ;; - swap_key\=*) - CRYPT_SWAP_KEY=`parse_opt "${x}"` + swap_key=*) + CRYPT_SWAP_KEY=${x#*=} ;; - swap_keydev\=*) - CRYPT_SWAP_KEYDEV=`parse_opt "${x}"` + swap_keydev=*) + CRYPT_SWAP_KEYDEV=${x#*=} ;; - real_resume\=*|resume\=*) - REAL_RESUME=`parse_opt "${x}"` + real_resume=*|resume=*) + REAL_RESUME=${x#*=} ;; noresume) NORESUME=1 @@ -204,14 +204,14 @@ do crypt_silent) CRYPT_SILENT=1 ;; - real_rootflags\=*) - REAL_ROOTFLAGS=`parse_opt "${x}"` + real_rootflags=*) + REAL_ROOTFLAGS=${x#*=} ;; - rootfstype\=*) - ROOTFSTYPE=`parse_opt "${x}"` + rootfstype=*) + ROOTFSTYPE=${x#*=} ;; - keymap\=*) - keymap=`parse_opt "${x}"` + keymap=*) + keymap=${x#*=} ;; aufs) USE_AUFS_NORMAL=1 @@ -228,19 +228,19 @@ do nounionfs) USE_UNIONFS_NORMAL=0 ;; -# unionfs\=*) +# unionfs=*) # if [ ! -x /sbin/unionfs ] # then # USE_UNIONFS_NORMAL=0 # bad_msg 'unionfs binary not found: aborting use of unionfs!' # else # USE_UNIONFS_NORMAL=1 -# CMD_UNIONFS=`parse_opt "${x}"` +# CMD_UNIONFS=${x#*=} # echo ${CMD_UNIONFS}|grep , >/dev/null 2>&1 # if [ $? -eq 0 ] # then -# UID=`echo ${CMD_UNIONFS#*,}` -# UNIONFS=`echo ${CMD_UNIONFS%,*}` +# UID=$(echo ${CMD_UNIONFS#*,}) +# UNIONFS=$(echo ${CMD_UNIONFS%,*}) # else # UNIONFS=${CMD_UNIONFS} # fi @@ -321,23 +321,23 @@ then if [ "${NORESUME}" != '1' ] && [ -n "${REAL_RESUME}" ] then case "${REAL_RESUME}" in - LABEL\=*|UUID\=*) + LABEL=*|UUID=*) RESUME_DEV="" retval=1 if [ ${retval} -ne 0 ]; then - RESUME_DEV=`findfs "${REAL_RESUME}" 2>/dev/null` + RESUME_DEV=$(findfs "${REAL_RESUME}" 2>/dev/null) retval=$? fi if [ ${retval} -ne 0 ]; then - RESUME_DEV=`busybox findfs "${REAL_RESUME}" 2>/dev/null` + RESUME_DEV=$(busybox findfs "${REAL_RESUME}" 2>/dev/null) retval=$? fi if [ ${retval} -ne 0 ]; then - RESUME_DEV=`blkid -l -t "${REAL_RESUME}" | cut -d ":" -f 1 2>/dev/null` + RESUME_DEV=$(blkid -l -t "${REAL_RESUME}" | cut -d ":" -f 1 2>/dev/null) retval=$? fi @@ -434,17 +434,17 @@ do retval=1 if [ ${retval} -ne 0 ]; then - ROOT_DEV=`findfs "${REAL_ROOT}" 2>/dev/null` + ROOT_DEV=$(findfs "${REAL_ROOT}" 2>/dev/null) retval=$? fi if [ ${retval} -ne 0 ]; then - ROOT_DEV=`busybox findfs "${REAL_ROOT}" 2>/dev/null` + ROOT_DEV=$(busybox findfs "${REAL_ROOT}" 2>/dev/null) retval=$? fi if [ ${retval} -ne 0 ]; then - ROOT_DEV=`blkid -l -t "${REAL_ROOT}" | cut -d ":" -f 1 2>/dev/null` + ROOT_DEV=$(blkid -l -t "${REAL_ROOT}" | cut -d ":" -f 1 2>/dev/null) retval=$? fi @@ -630,9 +630,9 @@ then then if [ -e "${NEW_ROOT}/mnt/cdrom/add" ] then - for targz in `ls ${NEW_ROOT}/mnt/cdrom/add/*.tar.gz` + for targz in $(ls ${NEW_ROOT}/mnt/cdrom/add/*.tar.gz) do - tarname=`basename ${targz}` + tarname=$(basename ${targz}) good_msg "Adding additional package ${tarname}" (cd ${NEW_ROOT} ; /bin/tar -xzf ${targz}) done @@ -655,7 +655,7 @@ then do if [ -L "${NEW_ROOT}/${FS_LOCATION}/${x}" ] then - ln -s "`readlink ${NEW_ROOT}/${FS_LOCATION}/${x}`" "${x}" 2>/dev/null + ln -s "$(readlink ${NEW_ROOT}/${FS_LOCATION}/${x})" "${x}" 2>/dev/null else # List all subdirectories of x find "${NEW_ROOT}/${FS_LOCATION}/${x}" -type d 2>/dev/null | while read directory @@ -665,7 +665,7 @@ then # Skip this directory if we already linked a parent directory if [ "${current_parent}" != '' ]; then - var=`echo "${directory}" | grep "^${current_parent}"` + var=$(echo "${directory}" | grep "^${current_parent}") if [ "${var}" != '' ]; then continue fi @@ -674,7 +674,7 @@ then if [ -e "/${NEW_ROOT}/${directory}" ] then # It does exist, link all the individual files - for file in `ls /${NEW_ROOT}/${FS_LOCATION}/${directory}` + for file in $(ls /${NEW_ROOT}/${FS_LOCATION}/${directory}) do if [ ! -d "/${NEW_ROOT}/${FS_LOCATION}/${directory}/${file}" ] && [ ! -e "${NEW_ROOT}/${directory}/${file}" ]; then ln -s "/${FS_LOCATION}/${directory}/${file}" "${directory}/${file}" 2> /dev/null @@ -694,7 +694,7 @@ then fi - #UML=`cat /proc/cpuinfo|grep UML|sed -e 's|model name.*: ||'` + #UML=$(cat /proc/cpuinfo|grep UML|sed -e 's|model name.*: ||') #if [ "${UML}" = 'UML' ] #then # # UML Fixes