[SCM] live-boot branch, debian, updated. debian/3.0_a25-1-72-gfc7a680

Daniel Baumann daniel at debian.org
Thu Apr 5 06:21:40 UTC 2012


The following commit has been merged in the debian branch:
commit 790fb6908a3d6a93380107ea0f95d77c21f6a2cc
Author: Tails developers <amnesia at boum.org>
Date:   Mon Feb 13 10:35:58 2012 +0100

    Refactor live-boot argument parser from live into live-helpers.
    
    This will be useful for making it possible to enable persistent during
    user-space.

diff --git a/scripts/live b/scripts/live
index 84924c9..f59ae71 100755
--- a/scripts/live
+++ b/scripts/live
@@ -42,394 +42,6 @@ then
 	touch /live.vars
 fi
 
-Arguments ()
-{
-	PRESEEDS=""
-	LOCATIONS=""
-
-	for ARGUMENT in $(cat /proc/cmdline)
-	do
-		case "${ARGUMENT}" in
-			skipconfig)
-				NOACCESSIBILITY="Yes"
-				NOFASTBOOT="Yes"
-				NOFSTAB="Yes"
-				NONETWORKING="Yes"
-
-				export NOACCESSIBILITY NOFASTBOOT NOFSTAB NONETWORKING
-				;;
-
-			access=*)
-				ACCESS="${ARGUMENT#access=}"
-				export ACCESS
-				;;
-
-			console=*)
-				DEFCONSOLE="${ARGUMENT#*=}"
-				export DEFCONSOLE
-				;;
-
-			BOOTIF=*)
-				BOOTIF="${x#BOOTIF=}"
-				;;
-
-			debug)
-				DEBUG="Yes"
-				export DEBUG
-
-				set -x
-				;;
-
-			dhcp)
-				# Force dhcp even while netbooting
-				# Use for debugging in case somebody works on fixing dhclient
-				DHCP="Force";
-				export DHCP
-				;;
-
-			nodhcp)
-				unset DHCP
-				;;
-
-			ethdevice=*)
-				DEVICE="${ARGUMENT#ethdevice=}"
-				ETHDEVICE="${DEVICE}"
-				export DEVICE ETHDEVICE
-				;;
-
-			ethdevice-timeout=*)
-				ETHDEV_TIMEOUT="${ARGUMENT#ethdevice-timeout=}"
-				export ETHDEV_TIMEOUT
-				;;
-
-			fetch=*)
-				FETCH="${ARGUMENT#fetch=}"
-				export FETCH
-				;;
-
-			forcepersistentfsck)
-				FORCEPERSISTENTFSCK="Yes"
-				export FORCEPERSISTENTFSCK
-				;;
-
-			ftpfs=*)
-				FTPFS="${ARGUMENT#ftpfs=}"
-				export FTPFS
-				;;
-
-			httpfs=*)
-				HTTPFS="${ARGUMENT#httpfs=}"
-				export HTTPFS
-				;;
-
-			iscsi=*)
-				ISCSI="${ARGUMENT#iscsi=}"
-				#ip:port - separated by ;
-				ISCSI_PORTAL="${ISCSI%;*}"
-				if echo "${ISCSI_PORTAL}" | grep -q , ; then
-					ISCSI_SERVER="${ISCSI_PORTAL%,*}"
-					ISCSI_PORT="${ISCSI_PORTAL#*,}"
-				fi
-				#target name
-				ISCSI_TARGET="${ISCSI#*;}"
-				export ISCSI ISCSI_PORTAL ISCSI_TARGET ISCSI_SERVER ISCSI_PORT
-				;;
-
-			isofrom=*|fromiso=*)
-				FROMISO="${ARGUMENT#*=}"
-				export FROMISO
-				;;
-
-			ignore_uuid)
-				IGNORE_UUID="Yes"
-				export IGNORE_UUID
-				;;
-
-			integrity-check)
-				INTEGRITY_CHECK="Yes"
-				export INTEGRITY_CHECK
-				;;
-
-			ip=*)
-				STATICIP="${ARGUMENT#ip=}"
-
-				if [ -z "${STATICIP}" ]
-				then
-					STATICIP="frommedia"
-				fi
-
-				export STATICIP
-				;;
-
-			live-getty)
-				LIVE_GETTY="1"
-				export LIVE_GETTY
-				;;
-
-			live-media=*|bootfrom=*)
-				LIVE_MEDIA="${ARGUMENT#*=}"
-				export LIVE_MEDIA
-				;;
-
-			live-media-encryption=*|encryption=*)
-				LIVE_MEDIA_ENCRYPTION="${ARGUMENT#*=}"
-				export LIVE_MEDIA_ENCRYPTION
-				;;
-
-			live-media-offset=*)
-				LIVE_MEDIA_OFFSET="${ARGUMENT#live-media-offset=}"
-				export LIVE_MEDIA_OFFSET
-				;;
-
-			live-media-path=*)
-				LIVE_MEDIA_PATH="${ARGUMENT#live-media-path=}"
-				export LIVE_MEDIA_PATH
-				;;
-
-			live-media-timeout=*)
-				LIVE_MEDIA_TIMEOUT="${ARGUMENT#live-media-timeout=}"
-				export LIVE_MEDIA_TIMEOUT
-				;;
-
-			module=*)
-				MODULE="${ARGUMENT#module=}"
-				export MODULE
-				;;
-
-			netboot=*)
-				NETBOOT="${ARGUMENT#netboot=}"
-				export NETBOOT
-				;;
-
-			nfsopts=*)
-				NFSOPTS="${ARGUMENT#nfsopts=}"
-				export NFSOPTS
-				;;
-
-			nfscow=*)
-				NFS_COW="${ARGUMENT#nfscow=}"
-				export NFS_COW
-				;;
-
-			noaccessibility)
-				NOACCESSIBILITY="Yes"
-				export NOACCESSIBILITY
-				;;
-
-			nofastboot)
-				NOFASTBOOT="Yes"
-				export NOFASTBOOT
-				;;
-
-			nofstab)
-				NOFSTAB="Yes"
-				export NOFSTAB
-				;;
-
-			nonetworking)
-				NONETWORKING="Yes"
-				export NONETWORKING
-				;;
-
-			ramdisk-size=*)
-				ramdisk_size="${ARGUMENT#ramdisk-size=}"
-				;;
-
-			swapon)
-				SWAPON="Yes"
-				export SWAPON
-				;;
-
-			persistent)
-				PERSISTENT="Yes"
-				export PERSISTENT
-				;;
-
-			persistent-encryption=*)
-				PERSISTENT_ENCRYPTION="${ARGUMENT#*=}"
-				export PERSISTENT_ENCRYPTION
-				;;
-
-			persistent-media=*)
-				PERSISTENT_MEDIA="${ARGUMENT#*=}"
-				export PERSISTENT_MEDIA
-				;;
-			persistent-method=*)
-				PERSISTENT_METHOD="${ARGUMENT#*=}"
-				export PERSISTENT_METHOD
-				;;
-
-			persistent-path=*)
-				PERSISTENT_PATH="${ARGUMENT#persistent-path=}"
-				export PERSISTENT_PATH
-				;;
-			persistent-read-only)
-				PERSISTENT_READONLY="Yes"
-				export PERSISTENT_READONLY
-				;;
-
-			persistent-storage=*)
-				PERSISTENT_STORAGE="${ARGUMENT#persistent-storage=}"
-				export PERSISTENT_STORAGE
-				;;
-
-			persistent-subtext=*)
-				root_overlay_label="${root_overlay_label}-${ARGUMENT#persistent-subtext=}"
-				custom_overlay_label="${custom_overlay_label}-${ARGUMENT#persistent-subtext=}"
-				root_snapshot_label="${root_snapshot_label}-${ARGUMENT#persistent-subtext=}"
-				home_snapshot_label="${home_snapshot_label}-${ARGUMENT#persistent-subtext=}"
-				;;
-
-			nopersistent)
-				NOPERSISTENT="Yes"
-				export NOPERSISTENT
-				;;
-
-			noprompt)
-				NOPROMPT="Yes"
-				export NOPROMPT
-				;;
-
-			noprompt=*)
-				NOPROMPT="${ARGUMENT#noprompt=}"
-				export NOPROMPT
-				;;
-
-			quickusbmodules)
-				QUICKUSBMODULES="Yes"
-				export QUICKUSBMODULES
-				;;
-
-			preseed/file=*|file=*)
-				LOCATIONS="${ARGUMENT#*=} ${LOCATIONS}"
-				export LOCATIONS
-				;;
-
-			nopreseed)
-				NOPRESEED="Yes"
-				export NOPRESEED
-				;;
-
-			*/*=*)
-				question="${ARGUMENT%%=*}"
-				value="${ARGUMENT#*=}"
-				PRESEEDS="${PRESEEDS}\"${question}=${value}\" "
-				export PRESEEDS
-				;;
-
-			showmounts)
-				SHOWMOUNTS="Yes"
-				export SHOWMOUNTS
-				;;
-
-			silent)
-				SILENT="Yes"
-				export SILENT
-				;;
-
-			todisk=*)
-				TODISK="${ARGUMENT#todisk=}"
-				export TODISK
-				;;
-
-			toram)
-				TORAM="Yes"
-				export TORAM
-				;;
-
-			toram=*)
-				TORAM="Yes"
-				MODULETORAM="${ARGUMENT#toram=}"
-				export TORAM MODULETORAM
-				;;
-
-			exposedroot)
-				EXPOSED_ROOT="Yes"
-				export EXPOSED_ROOT
-				;;
-
-			plainroot)
-				PLAIN_ROOT="Yes"
-				export PLAIN_ROOT
-				;;
-
-			skipunion)
-				SKIP_UNION_MOUNTS="Yes"
-				export SKIP_UNION_MOUNTS
-				;;
-
-			root=*)
-				ROOT="${ARGUMENT#root=}"
-				export ROOT
-				;;
-
-			union=*)
-				UNIONTYPE="${ARGUMENT#union=}"
-				export UNIONTYPE
-				;;
-		esac
-	done
-
-	# sort of compatibility with netboot.h from linux docs
-	if [ -z "${NETBOOT}" ]
-	then
-		if [ "${ROOT}" = "/dev/nfs" ]
-		then
-			NETBOOT="nfs"
-			export NETBOOT
-		elif [ "${ROOT}" = "/dev/cifs" ]
-		then
-			NETBOOT="cifs"
-			export NETBOOT
-		fi
-	fi
-
-	if [ -z "${MODULE}" ]
-	then
-		MODULE="filesystem"
-		export MODULE
-	fi
-
-	if [ -z "${UNIONTYPE}" ]
-	then
-		UNIONTYPE="aufs"
-		export UNIONTYPE
-	fi
-
-	if [ -z "${PERSISTENT_ENCRYPTION}" ]
-	then
-		PERSISTENT_ENCRYPTION="none"
-		export PERSISTENT_ENCRYPTION
-	elif echo ${PERSISTENT_ENCRYPTION} | grep -qe "\<luks\>"
-	then
-		if ! modprobe dm-crypt
-		then
-			log_warning_msg "Unable to load module dm-crypt"
-			PERSISTENT_ENCRYPTION=$(echo ${PERSISTENT_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
-			export PERSISTENT_ENCRYPTION
-		fi
-
-		if [ ! -x /lib/cryptsetup/askpass ] || [ ! -x /sbin/cryptsetup ]
-		then
-			log_warning_msg "cryptsetup in unavailable"
-			PERSISTENT_ENCRYPTION=$(echo ${PERSISTENT_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
-			export PERSISTENT_ENCRYPTION
-		fi
-	fi
-
-	if [ -n "${PERSISTENT}" ] && [ -z "${PERSISTENT_METHOD}" ]
-	then
-		PERSISTENT_METHOD="snapshot,overlay"
-		export PERSISTENT_METHOD
-	fi
-
-	if [ -n "${PERSISTENT}" ] && [ -z "${PERSISTENT_STORAGE}" ]
-	then
-		PERSISTENT_STORAGE="filesystem,file"
-		export PERSISTENT_STORAGE
-	fi
-}
-
 is_live_path ()
 {
 	DIRECTORY="${1}"
diff --git a/scripts/live-helpers b/scripts/live-helpers
index db1eb9f..d4a5316 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -15,6 +15,394 @@ else
 	udevinfo='udevinfo'
 fi
 
+Arguments ()
+{
+	PRESEEDS=""
+	LOCATIONS=""
+
+	for ARGUMENT in $(cat /proc/cmdline)
+	do
+		case "${ARGUMENT}" in
+			skipconfig)
+				NOACCESSIBILITY="Yes"
+				NOFASTBOOT="Yes"
+				NOFSTAB="Yes"
+				NONETWORKING="Yes"
+
+				export NOACCESSIBILITY NOFASTBOOT NOFSTAB NONETWORKING
+				;;
+
+			access=*)
+				ACCESS="${ARGUMENT#access=}"
+				export ACCESS
+				;;
+
+			console=*)
+				DEFCONSOLE="${ARGUMENT#*=}"
+				export DEFCONSOLE
+				;;
+
+			BOOTIF=*)
+				BOOTIF="${x#BOOTIF=}"
+				;;
+
+			debug)
+				DEBUG="Yes"
+				export DEBUG
+
+				set -x
+				;;
+
+			dhcp)
+				# Force dhcp even while netbooting
+				# Use for debugging in case somebody works on fixing dhclient
+				DHCP="Force";
+				export DHCP
+				;;
+
+			nodhcp)
+				unset DHCP
+				;;
+
+			ethdevice=*)
+				DEVICE="${ARGUMENT#ethdevice=}"
+				ETHDEVICE="${DEVICE}"
+				export DEVICE ETHDEVICE
+				;;
+
+			ethdevice-timeout=*)
+				ETHDEV_TIMEOUT="${ARGUMENT#ethdevice-timeout=}"
+				export ETHDEV_TIMEOUT
+				;;
+
+			fetch=*)
+				FETCH="${ARGUMENT#fetch=}"
+				export FETCH
+				;;
+
+			forcepersistentfsck)
+				FORCEPERSISTENTFSCK="Yes"
+				export FORCEPERSISTENTFSCK
+				;;
+
+			ftpfs=*)
+				FTPFS="${ARGUMENT#ftpfs=}"
+				export FTPFS
+				;;
+
+			httpfs=*)
+				HTTPFS="${ARGUMENT#httpfs=}"
+				export HTTPFS
+				;;
+
+			iscsi=*)
+				ISCSI="${ARGUMENT#iscsi=}"
+				#ip:port - separated by ;
+				ISCSI_PORTAL="${ISCSI%;*}"
+				if echo "${ISCSI_PORTAL}" | grep -q , ; then
+					ISCSI_SERVER="${ISCSI_PORTAL%,*}"
+					ISCSI_PORT="${ISCSI_PORTAL#*,}"
+				fi
+				#target name
+				ISCSI_TARGET="${ISCSI#*;}"
+				export ISCSI ISCSI_PORTAL ISCSI_TARGET ISCSI_SERVER ISCSI_PORT
+				;;
+
+			isofrom=*|fromiso=*)
+				FROMISO="${ARGUMENT#*=}"
+				export FROMISO
+				;;
+
+			ignore_uuid)
+				IGNORE_UUID="Yes"
+				export IGNORE_UUID
+				;;
+
+			integrity-check)
+				INTEGRITY_CHECK="Yes"
+				export INTEGRITY_CHECK
+				;;
+
+			ip=*)
+				STATICIP="${ARGUMENT#ip=}"
+
+				if [ -z "${STATICIP}" ]
+				then
+					STATICIP="frommedia"
+				fi
+
+				export STATICIP
+				;;
+
+			live-getty)
+				LIVE_GETTY="1"
+				export LIVE_GETTY
+				;;
+
+			live-media=*|bootfrom=*)
+				LIVE_MEDIA="${ARGUMENT#*=}"
+				export LIVE_MEDIA
+				;;
+
+			live-media-encryption=*|encryption=*)
+				LIVE_MEDIA_ENCRYPTION="${ARGUMENT#*=}"
+				export LIVE_MEDIA_ENCRYPTION
+				;;
+
+			live-media-offset=*)
+				LIVE_MEDIA_OFFSET="${ARGUMENT#live-media-offset=}"
+				export LIVE_MEDIA_OFFSET
+				;;
+
+			live-media-path=*)
+				LIVE_MEDIA_PATH="${ARGUMENT#live-media-path=}"
+				export LIVE_MEDIA_PATH
+				;;
+
+			live-media-timeout=*)
+				LIVE_MEDIA_TIMEOUT="${ARGUMENT#live-media-timeout=}"
+				export LIVE_MEDIA_TIMEOUT
+				;;
+
+			module=*)
+				MODULE="${ARGUMENT#module=}"
+				export MODULE
+				;;
+
+			netboot=*)
+				NETBOOT="${ARGUMENT#netboot=}"
+				export NETBOOT
+				;;
+
+			nfsopts=*)
+				NFSOPTS="${ARGUMENT#nfsopts=}"
+				export NFSOPTS
+				;;
+
+			nfscow=*)
+				NFS_COW="${ARGUMENT#nfscow=}"
+				export NFS_COW
+				;;
+
+			noaccessibility)
+				NOACCESSIBILITY="Yes"
+				export NOACCESSIBILITY
+				;;
+
+			nofastboot)
+				NOFASTBOOT="Yes"
+				export NOFASTBOOT
+				;;
+
+			nofstab)
+				NOFSTAB="Yes"
+				export NOFSTAB
+				;;
+
+			nonetworking)
+				NONETWORKING="Yes"
+				export NONETWORKING
+				;;
+
+			ramdisk-size=*)
+				ramdisk_size="${ARGUMENT#ramdisk-size=}"
+				;;
+
+			swapon)
+				SWAPON="Yes"
+				export SWAPON
+				;;
+
+			persistent)
+				PERSISTENT="Yes"
+				export PERSISTENT
+				;;
+
+			persistent-encryption=*)
+				PERSISTENT_ENCRYPTION="${ARGUMENT#*=}"
+				export PERSISTENT_ENCRYPTION
+				;;
+
+			persistent-media=*)
+				PERSISTENT_MEDIA="${ARGUMENT#*=}"
+				export PERSISTENT_MEDIA
+				;;
+			persistent-method=*)
+				PERSISTENT_METHOD="${ARGUMENT#*=}"
+				export PERSISTENT_METHOD
+				;;
+
+			persistent-path=*)
+				PERSISTENT_PATH="${ARGUMENT#persistent-path=}"
+				export PERSISTENT_PATH
+				;;
+			persistent-read-only)
+				PERSISTENT_READONLY="Yes"
+				export PERSISTENT_READONLY
+				;;
+
+			persistent-storage=*)
+				PERSISTENT_STORAGE="${ARGUMENT#persistent-storage=}"
+				export PERSISTENT_STORAGE
+				;;
+
+			persistent-subtext=*)
+				root_overlay_label="${root_overlay_label}-${ARGUMENT#persistent-subtext=}"
+				custom_overlay_label="${custom_overlay_label}-${ARGUMENT#persistent-subtext=}"
+				root_snapshot_label="${root_snapshot_label}-${ARGUMENT#persistent-subtext=}"
+				home_snapshot_label="${home_snapshot_label}-${ARGUMENT#persistent-subtext=}"
+				;;
+
+			nopersistent)
+				NOPERSISTENT="Yes"
+				export NOPERSISTENT
+				;;
+
+			noprompt)
+				NOPROMPT="Yes"
+				export NOPROMPT
+				;;
+
+			noprompt=*)
+				NOPROMPT="${ARGUMENT#noprompt=}"
+				export NOPROMPT
+				;;
+
+			quickusbmodules)
+				QUICKUSBMODULES="Yes"
+				export QUICKUSBMODULES
+				;;
+
+			preseed/file=*|file=*)
+				LOCATIONS="${ARGUMENT#*=} ${LOCATIONS}"
+				export LOCATIONS
+				;;
+
+			nopreseed)
+				NOPRESEED="Yes"
+				export NOPRESEED
+				;;
+
+			*/*=*)
+				question="${ARGUMENT%%=*}"
+				value="${ARGUMENT#*=}"
+				PRESEEDS="${PRESEEDS}\"${question}=${value}\" "
+				export PRESEEDS
+				;;
+
+			showmounts)
+				SHOWMOUNTS="Yes"
+				export SHOWMOUNTS
+				;;
+
+			silent)
+				SILENT="Yes"
+				export SILENT
+				;;
+
+			todisk=*)
+				TODISK="${ARGUMENT#todisk=}"
+				export TODISK
+				;;
+
+			toram)
+				TORAM="Yes"
+				export TORAM
+				;;
+
+			toram=*)
+				TORAM="Yes"
+				MODULETORAM="${ARGUMENT#toram=}"
+				export TORAM MODULETORAM
+				;;
+
+			exposedroot)
+				EXPOSED_ROOT="Yes"
+				export EXPOSED_ROOT
+				;;
+
+			plainroot)
+				PLAIN_ROOT="Yes"
+				export PLAIN_ROOT
+				;;
+
+			skipunion)
+				SKIP_UNION_MOUNTS="Yes"
+				export SKIP_UNION_MOUNTS
+				;;
+
+			root=*)
+				ROOT="${ARGUMENT#root=}"
+				export ROOT
+				;;
+
+			union=*)
+				UNIONTYPE="${ARGUMENT#union=}"
+				export UNIONTYPE
+				;;
+		esac
+	done
+
+	# sort of compatibility with netboot.h from linux docs
+	if [ -z "${NETBOOT}" ]
+	then
+		if [ "${ROOT}" = "/dev/nfs" ]
+		then
+			NETBOOT="nfs"
+			export NETBOOT
+		elif [ "${ROOT}" = "/dev/cifs" ]
+		then
+			NETBOOT="cifs"
+			export NETBOOT
+		fi
+	fi
+
+	if [ -z "${MODULE}" ]
+	then
+		MODULE="filesystem"
+		export MODULE
+	fi
+
+	if [ -z "${UNIONTYPE}" ]
+	then
+		UNIONTYPE="aufs"
+		export UNIONTYPE
+	fi
+
+	if [ -z "${PERSISTENT_ENCRYPTION}" ]
+	then
+		PERSISTENT_ENCRYPTION="none"
+		export PERSISTENT_ENCRYPTION
+	elif echo ${PERSISTENT_ENCRYPTION} | grep -qe "\<luks\>"
+	then
+		if ! modprobe dm-crypt
+		then
+			log_warning_msg "Unable to load module dm-crypt"
+			PERSISTENT_ENCRYPTION=$(echo ${PERSISTENT_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
+			export PERSISTENT_ENCRYPTION
+		fi
+
+		if [ ! -x /lib/cryptsetup/askpass ] || [ ! -x /sbin/cryptsetup ]
+		then
+			log_warning_msg "cryptsetup in unavailable"
+			PERSISTENT_ENCRYPTION=$(echo ${PERSISTENT_ENCRYPTION} | sed -e 's/\<luks,\|,\?luks$//g')
+			export PERSISTENT_ENCRYPTION
+		fi
+	fi
+
+	if [ -z "${PERSISTENT_METHOD}" ]
+	then
+		PERSISTENT_METHOD="snapshot,overlay"
+		export PERSISTENT_METHOD
+	fi
+
+	if [ -z "${PERSISTENT_STORAGE}" ]
+	then
+		PERSISTENT_STORAGE="filesystem,file"
+		export PERSISTENT_STORAGE
+	fi
+}
+
 sys2dev ()
 {
 	sysdev=${1#/sys}

-- 
live-boot



More information about the debian-live-changes mailing list