for ARGUMENT in $(cat /proc/cmdline)
do
case "${ARGUMENT}" in
+ skipconfig)
+ NOACCESSIBILITY="Yes"
+ NOAPPARMOR="Yes"
+ NOAPTCDROM="Yes"
+ NOAUTOLOGIN="Yes"
+ NOCONSOLEKEYBOARD="Yes"
+ NOFASTBOOT="Yes"
+ NOFSTAB="Yes"
+ NOGNOMEPANEL="Yes"
+ NOHOSTS="Yes"
+ NOJOCKEY="Yes"
+ NOKPERSONALIZER="Yes"
+ NOLANGUAGESELECTOR="Yes"
+ NOLOCALES="Yes"
+ NONETWORKING="Yes"
+ NOPOLKITCONF="Yes"
+ NOPOWERMANAGEMENT="Yes"
+ NOPROGRAMCRASHES="Yes"
+ NOSUDO="Yes"
+ NOTIMEZONE="Yes"
+ NOUPDATENOTIFIER="Yes"
+ NOUSER="Yes"
+ NOXAUTOCONFIG="Yes"
+ NOXAUTOLOGIN="Yes"
+ NOXSCREENSAVER="Yes"
+
+ export NOACCESSIBILITY NOAPPARMOR NOAPTCDROM NOAUTOLOGIN NOCONSOLEKEYBOARD NOFASTBOOT NOFSTAB NOGNOMEPANEL NOHOSTS NOJOCKEY NOKPERSONALIZER NOLANGUAGESELECTOR NOLOCALES NONETWORKING NOPOLKITCONF NOPOWERMANAGEMENT NOPROGRAMCRASHES NOSUDO NOTIMEZONE NOUPDATENOTIFIER NOUSER NOXAUTOCONFIG NOXAUTOLOGIN NOXSCREENSAVER
+ ;;
+
access=*)
ACCESS="${ARGUMENT#access=}"
export ACCESS
export NOPERSISTENT
;;
+ quickusbmodules)
+ QUICKUSBMODULES="Yes"
+ export QUICKUSBMODULES
+ ;;
+
preseed/file=*|file=*)
LOCATION="${ARGUMENT#*=}"
export LOCATION
{
sysfs_path="${1#/sys}"
- if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-)"
+ if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-|platform-mmc)"
then
return 0
elif echo "${sysfs_path}" | grep -q '^/block/vd[a-z]$'
if [ "${PERSISTENT}" != "nofiles" ]
then
# search for image files
- snapdata=$(find_files "${snap_label}.squashfs ${snap_label}.cpio.gz ${snap_label}.ext2 ${snap_label}.ext3 ${snap_label}.ext4 ${snap_label}.jffs2")
+ snapdata=$(find_files "${PERSISTENT_PATH}${snap_label}.squashfs ${PERSISTENT_PATH}${snap_label}.cpio.gz ${PERSISTENT_PATH}${snap_label}.ext2 ${PERSISTENT_PATH}${snap_label}.ext3 ${PERSISTENT_PATH}${snap_label}.ext4 ${PERSISTENT_PATH}${snap_label}.jffs2")
fi
if [ -z "${snapdata}" ]
# Let's just mount the read-only file systems first
rofsstring=""
rofslist=""
- minor_kernel_version=$(uname -r|cut -c 5-|sed 's/[^0-9].*//')
- if [ "${NETBOOT}" = "nfs" ] && [ "${minor_kernel_version}" -lt 22 ]
+ if [ "${UNIONTYPE}" = "aufs" ]
then
- # go aroung a bug in nfs-unionfs locking for unionfs <= 1.4
- roopt="nfsro"
- elif [ "${UNIONTYPE}" = "aufs" ]
- then
- roopt="rr"
+ roopt="rr,noxino"
else
roopt="ro"
fi
# Looking for "${root_persistence}" device or file
if [ -n "${PERSISTENT}" ] && [ -z "${NOPERSISTENT}" ]
then
- # Load USB modules
- num_block=$(ls -l /sys/block | wc -l)
- for module in sd_mod uhci-hcd ehci-hcd ohci-hcd usb-storage
- do
- modprobe -q -b ${module}
- done
-
- if [ -x /sbin/udevadm ]
+ if [ -z "${QUICKUSBMODULES}" ]
then
- # lenny
- udevadm trigger
- udevadm settle
- else
- # etch
- udevtrigger
- udevsettle
- fi
-
- # For some reason, udevsettle does not block in this scenario,
- # so we sleep for a little while.
- #
- # See https://bugs.launchpad.net/ubuntu/+source/casper/+bug/84591
- for timeout in 5 4 3 2 1
- do
- sleep 1
+ # Load USB modules
+ num_block=$(ls -l /sys/block | wc -l)
+ for module in sd_mod uhci-hcd ehci-hcd ohci-hcd usb-storage
+ do
+ modprobe -q -b ${module}
+ done
- if [ $(ls -l /sys/block | wc -l) -gt ${num_block} ]
+ if [ -x /sbin/udevadm ]
then
- break
+ # lenny
+ udevadm trigger
+ udevadm settle
+ else
+ # etch
+ udevtrigger
+ udevsettle
fi
- done
+
+ # For some reason, udevsettle does not block in this scenario,
+ # so we sleep for a little while.
+ #
+ # See https://bugs.launchpad.net/ubuntu/+source/casper/+bug/84591
+ for timeout in 5 4 3 2 1
+ do
+ sleep 1
+
+ if [ $(ls -l /sys/block | wc -l) -gt ${num_block} ]
+ then
+ break
+ fi
+ done
+ fi
# search for label and files (this could be hugely optimized)
cowprobe=$(find_cow_device "${root_persistence}")
fi
fi
done
+ return 1
;;
removable)
done
fi
done
+ return 1
;;
*)