diff options
author | Eric Hameleers <alien@slackware.com> | 2015-12-02 11:26:03 +0100 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2015-12-02 11:26:03 +0100 |
commit | af83560e632183112455ea9b89d558a8b952ffb3 (patch) | |
tree | c8da84e28b85990f67531e7de428445452c6b727 | |
parent | 719100da4a9f0966a4570ae49a40f5df0eb7fa09 (diff) | |
download | liveslak-af83560e632183112455ea9b89d558a8b952ffb3.tar.gz liveslak-af83560e632183112455ea9b89d558a8b952ffb3.tar.xz |
Add support for alternative directorynames of 'persistence' and 'liveslak'.
The persistence directory on USB is called 'persistence' by default but can
now be re-defined when running 'make_slackware_live.sh' to create the ISO.
Additionally it can be changed dynamically on boot of the Live OS by adding
a 'persistence=<dirname>' parameter to the boot.
The Live OS main directory is called 'liveslak' by default but can
now be re-defined when running 'make_slackware_live.sh' to create the ISO.
Additionally it can be changed dynamically on boot of the Live OS by adding
a 'livemain=<dirname>' parameter to the boot.
-rwxr-xr-x | liveinit | 25 | ||||
-rwxr-xr-x | make_slackware_live.sh | 6 |
2 files changed, 21 insertions, 10 deletions
@@ -34,8 +34,9 @@ # The ISO creation script will create a filesystem with this label. # Nevertheless, the user may have copied the ISO content to a different device. -MEDIALABEL="@MEDIALABEL@" LIVEMAIN="@LIVEMAIN@" +MEDIALABEL="@MEDIALABEL@" +PERSISTENCE="@PERSISTENCE@" # By default, let the media determine if we can write persistent changes: VIRGIN=0 @@ -72,21 +73,27 @@ for ARG in $(cat /proc/cmdline); do kbd=*) KEYMAP=$(echo $ARG | cut -f2 -d=) ;; + livemain=*) + LIVEMAIN=$(echo $ARG | cut -f2 -d=) + ;; livepw=*) LIVEPW=$(echo $ARG | cut -f2 -d=) ;; load=*) LOAD=$(echo $ARG | cut -f2 -d=) ;; - noload=*) - NOLOAD=$(echo $ARG | cut -f2 -d=) - ;; locale=*) LOCALE=$(echo $ARG | cut -f2 -d=) ;; + noload=*) + NOLOAD=$(echo $ARG | cut -f2 -d=) + ;; nop) VIRGIN=1 ;; + persistence=*) + PERSISTENCE=$(echo $ARG | cut -f2 -d=) + ;; rescue) RESCUE=1 ;; @@ -272,7 +279,7 @@ if [ "$RESCUE" = "" ]; then # Get rid of the starting colon: RODIRS=$(echo $RODIRS |cut -c2-) - # Setup persistency in case our media is writable, *and* the user + # Setup persistence in case our media is writable, *and* the user # has created a directory "persistence" in the root of the media. # otherwise we let the block changes accumulate in RAM only. @@ -281,14 +288,14 @@ if [ "$RESCUE" = "" ]; then UPPERDIR=/mnt/live/changes OVLWORK=/mnt/live/.ovlwork if [ "$VIRGIN" = "0" ]; then - if [ "LIVEFS" != "iso9660" -a -d /mnt/media/persistence ]; then + if [ "LIVEFS" != "iso9660" -a -d /mnt/media/${PERSISTENCE} ]; then # Looks OK, but we need to remount the media in order to write to it: mount -o remount,rw /mnt/media # Try a write... just to be dead sure: - if touch /mnt/media/persistence/.rwtest 2>/dev/null && rm /mnt/media/persistence/.rwtest 2>/dev/null ; then + if touch /mnt/media/${PERSISTENCE}/.rwtest 2>/dev/null && rm /mnt/media/${PERSISTENCE}/.rwtest 2>/dev/null ; then # Writable media and we are allowed to write to it. - echo "${INITRD}: Writing persistent changes to media directory '/persistence'." - UPPERDIR=/mnt/media/persistence + echo "${INITRD}: Writing persistent changes to media directory '/${PERSISTENCE}'." + UPPERDIR=/mnt/media/${PERSISTENCE} OVLWORK=/mnt/media/.ovlwork fi fi diff --git a/make_slackware_live.sh b/make_slackware_live.sh index a29f9ad..9999035 100755 --- a/make_slackware_live.sh +++ b/make_slackware_live.sh @@ -91,6 +91,9 @@ LIVEMAIN=${LIVEMAIN:-"liveslak"} # The filesystem label we will be giving our ISO: MEDIALABEL=${MEDIALABEL:-"LIVESLAK"} +# The name of the directory used for storing persistence data: +PERSISTENCE=${PERSISTENCE:-"persistence"} + # Slackware version to use (note: this won't work for Slackware <= 14.1): SL_VERSION=${SL_VERSION:-"current"} @@ -1121,8 +1124,9 @@ KVER=$(ls ${LIVE_ROOTDIR}/var/log/packages/kernel*modules* |head -1 |rev | cut - echo "-- Creating initrd for kernel-generic $KVER ..." chroot ${LIVE_ROOTDIR} /sbin/mkinitrd -c -l us -o /boot/initrd_${KVER}.gz -k ${KVER} -m ${KMODS} 1>${DBGOUT} 2>${DBGOUT} cat $LIVE_TOOLDIR/liveinit | sed \ - -e "s/@MEDIALABEL@/$MEDIALABEL/g" \ -e "s/@LIVEMAIN@/$LIVEMAIN/g" \ + -e "s/@MEDIALABEL@/$MEDIALABEL/g" \ + -e "s/@PERSISTENCE@/$PERSISTENCE/g" \ -e "s/@DARKSTAR@/$LIVE_HOSTNAME/g" \ > ${LIVE_ROOTDIR}/boot/initrd-tree/init chroot ${LIVE_ROOTDIR} /sbin/mkinitrd 1>/dev/null 2>${DBGOUT} |