From 0dedcb0d4d4bb2c7693af28201fbc3fc36305c82 Mon Sep 17 00:00:00 2001 From: Holger Paradies Date: Sat, 15 May 2021 09:08:36 +0200 Subject: Import last script used from acritox.com still has the suffix .bash --- kanotix/enable_persistent_live | 123 ------------------------------------ kanotix/enable_persistent_live.bash | 123 ++++++++++++++++++++++++++++++++++++ 2 files changed, 123 insertions(+), 123 deletions(-) delete mode 100755 kanotix/enable_persistent_live create mode 100644 kanotix/enable_persistent_live.bash diff --git a/kanotix/enable_persistent_live b/kanotix/enable_persistent_live deleted file mode 100755 index a28bdc0..0000000 --- a/kanotix/enable_persistent_live +++ /dev/null @@ -1,123 +0,0 @@ -#!/bin/bash -# This script automatically configures your Live-USB-Stick to be persistent -# -# Written by Andreas Loibl -KDIALOG="$(which kdialog)" || KDIALOG="/usr/bin/kdialog" -ZENITY="$(which zenity)" || ZENITY="/usr/bin/zenity" - -partition=3 -filesystem=ext4 - -. /etc/default/distro -isodev="$(awk '{if($2=="/live/image"||$2=="/lib/live/mount/medium"){print $1;}}' /proc/mounts)" -case $isodev in -/dev/sd*) ;; -*) isodev= ;; -esac -case "$( ls /grub.cmdline 2>/dev/null)" in -/grub.cmdline) -if [ -x "$KDIALOG" ]; then - $KDIALOG --error "Persistent mode seems to be enabled already!" --title "Persistent Live-USB-Stick" -elif [ -x "$ZENITY" ]; then - $ZENITY --error --text "Persistent mode seems to be enabled already!" --title "Persistent Live-USB-Stick" -fi -exit 1 -;; -esac - -if [ "$FLL_DISTRO_MODE" != "live" -o -z "$isodev" ]; then -if [ -x "$KDIALOG" ]; then - $KDIALOG --error "This script can only be used from a Live USB-Stick!" --title "Persistent Live-USB-Stick" -elif [ -x "$ZENITY" ]; then - $ZENITY --error --text "This script can only be used from a Live USB-Stick!" --title "Persistent Live-USB-Stick" -fi -exit 1 -fi - -if ((UID)); then -if [ -x "$KDIALOG" ]; then -$KDIALOG --warningcontinuecancel "This script automatically configures your Live-USB-Stick to be persistent: - -* it adds a new partition into the unused space of your stick -* formats the partition with $filesystem filesystem -* writes config files to the new partition - -=============================================================== -CURRENT CHANGES ARE NOT STORED, YOU HAVE TO REBOOT TO ENABLE PERSISTENCE! -=============================================================== - -Press \"Continue\" when you are ready to start. - -" --title "Persistent Live-USB-Stick" || exit 0 -elif [ -x "$ZENITY" ]; then - -$ZENITY --question --text "This script automatically configures your Live-USB-Stick to be persistent: - -* it adds a new partition into the unused space of your stick -* formats the partition with $filesystem filesystem -* writes config files to the new partition - -=============================================================== -CURRENT CHANGES ARE NOT STORED, YOU HAVE TO REBOOT TO ENABLE PERSISTENCE! -=============================================================== - -Press \"Continue\" when you are ready to start. - -" --title "Persistent Live-USB-Stick" || exit 0 -fi -cp "$0" "/tmp/$(basename "$0")" -chmod +x "/tmp/$(basename "$0")" -if [ -x "$KDIALOG" ]; then -$KDIALOG --progressbar "Please wait..." --title "Persistent Live-USB-Stick" 0 -sudo "/tmp/$(basename "$0")" "$@" -elif [ -x "$ZENITY" ]; then -sudo "/tmp/$(basename "$0")" "$@" | $ZENITY --progress --pulsate --text "Please wait..." --title "Persistent Live-USB-Stick" 0 -fi - -exit $? -fi - -exec >/tmp/persistent.log 2>&1 -set -x - -. /usr/share/acritoxinstaller/modules/partitions -isodisk="$(get_disk $isodev)" -is_removeable "$isodisk" || exit 1 - -nop() { return 0; } -trap nop TERM KILL HUP - -# Debug output -set -x - -if [ ! -e "$isodisk"$partition ]; then - # Add partition - echo "n|p|$partition|||w" | tr '|' '\n' | fdisk "$isodisk" - partprobe "$isodisk" - while [ ! -e "$isodisk"$partition ]; do sleep 1; done - mkfs.$filesystem -L "persistence" "$isodisk"$partition -fi - -if [ -d /lib/live/mount ]; then - mkdir -p /lib/live/mount/persistence - mount "$isodisk"$partition /lib/live/mount/persistence - set -- $(cat /proc/cmdline) - shift - echo "set persistence_cmdline='$@ persistence'" > /lib/live/mount/persistence/grub.cmdline - echo "/ union" > /lib/live/mount/persistence/persistence.conf - umount /lib/live/mount/persistence - rmdir /lib/live/mount/persistence -elif [ -d /live ]; then - mkdir -p /live/persistence - mount "$isodisk"$partition /live/persistence - set -- $(cat /proc/cmdline) - shift - echo "set persistence_cmdline='$@ persistence'" > /live/persistence/grub.cmdline - echo "/ union" > /live/persistence/persistence.conf - umount /live/persistence - rmdir /live/persistence -fi - -#killall -9 kdialog -kill $(ps ax | grep kdialog | grep Live-USB | cut -c2-5) -exit 0 diff --git a/kanotix/enable_persistent_live.bash b/kanotix/enable_persistent_live.bash new file mode 100644 index 0000000..807730a --- /dev/null +++ b/kanotix/enable_persistent_live.bash @@ -0,0 +1,123 @@ +#!/bin/bash +# This script automatically configures your Live-USB-Stick to be persistent +# +# Written by Andreas Loibl +KDIALOG="$(which kdialog)" || KDIALOG="/usr/bin/kdialog" +ZENITY="$(which zenity)" || ZENITY="/usr/bin/zenity" + +partition=3 +filesystem=ext4 + +. /etc/default/distro +isodev="$(awk '{if($2=="/live/image"||$2=="/lib/live/mount/medium"){print $1;}}' /proc/mounts)" +case $isodev in +/dev/sd*) ;; +*) isodev= ;; +esac +case "$( ls /grub.cmdline 2>/dev/null)" in +/grub.cmdline) +if [ -x "$KDIALOG" ]; then + $KDIALOG --error "Persistent mode seems to be enabled already!" --title "Persistent Live-USB-Stick" +elif [ -x "$ZENITY" ]; then + $ZENITY --error --text "Persistent mode seems to be enabled already!" --title "Persistent Live-USB-Stick" +fi +exit 1 +;; +esac + +if [ "$FLL_DISTRO_MODE" != "live" -o -z "$isodev" ]; then +if [ -x "$KDIALOG" ]; then + $KDIALOG --error "This script can only be used from a Live USB-Stick!" --title "Persistent Live-USB-Stick" +elif [ -x "$ZENITY" ]; then + $ZENITY --error --text "This script can only be used from a Live USB-Stick!" --title "Persistent Live-USB-Stick" +fi +exit 1 +fi + +if ((UID)); then +if [ -x "$KDIALOG" ]; then +$KDIALOG --warningcontinuecancel "This script automatically configures your Live-USB-Stick to be persistent: + +* it adds a new partition into the unused space of your stick +* formats the partition with $filesystem filesystem +* writes config files to the new partition + +=============================================================== +CURRENT CHANGES ARE NOT STORED, YOU HAVE TO REBOOT TO ENABLE PERSITENCE! +=============================================================== + +Press \"Continue\" when you are ready to start. + +" --title "Persistent Live-USB-Stick" || exit 0 +elif [ -x "$ZENITY" ]; then + +$ZENITY --question --text "This script automatically configures your Live-USB-Stick to be persistent: + +* it adds a new partition into the unused space of your stick +* formats the partition with $filesystem filesystem +* writes config files to the new partition + +=============================================================== +CURRENT CHANGES ARE NOT STORED, YOU HAVE TO REBOOT TO ENABLE PERSITENCE! +=============================================================== + +Press \"Continue\" when you are ready to start. + +" --title "Persistent Live-USB-Stick" || exit 0 +fi +cp "$0" "/tmp/$(basename "$0")" +chmod +x "/tmp/$(basename "$0")" +if [ -x "$KDIALOG" ]; then +$KDIALOG --progressbar "Please wait..." --title "Persistent Live-USB-Stick" 0 +sudo "/tmp/$(basename "$0")" "$@" +elif [ -x "$ZENITY" ]; then +sudo "/tmp/$(basename "$0")" "$@" | $ZENITY --progress --pulsate --text "Please wait..." --title "Persistent Live-USB-Stick" 0 +fi + +exit $? +fi + +exec >/tmp/persistent.log 2>&1 +set -x + +. /usr/share/acritoxinstaller/modules/partitions +isodisk="$(get_disk $isodev)" +is_removeable "$isodisk" || exit 1 + +nop() { return 0; } +trap nop TERM KILL HUP + +# Debug output +set -x + +if [ ! -e "$isodisk"$partition ]; then + # Add partition + echo "n|p|$partition|||w" | tr '|' '\n' | fdisk "$isodisk" + partprobe "$isodisk" + while [ ! -e "$isodisk"$partition ]; do sleep 1; done + mkfs.$filesystem -L "persistence" "$isodisk"$partition +fi + +if [ -d /lib/live/mount ]; then + mkdir -p /lib/live/mount/persistence + mount "$isodisk"$partition /lib/live/mount/persistence + set -- $(cat /proc/cmdline) + shift + echo "set persistence_cmdline='$@ persistence'" > /lib/live/mount/persistence/grub.cmdline + echo "/ union" > /lib/live/mount/persistence/persistence.conf + umount /lib/live/mount/persistence + rmdir /lib/live/mount/persistence +elif [ -d /live ]; then + mkdir -p /live/persistence + mount "$isodisk"$partition /live/persistence + set -- $(cat /proc/cmdline) + shift + echo "set persistence_cmdline='$@ persistence'" > /live/persistence/grub.cmdline + echo "/ union" > /live/persistence/persistence.conf + umount /live/persistence + rmdir /live/persistence +fi + +#killall -9 kdialog +kill $(ps ax | grep kdialog | grep Live-USB | cut -c2-5) +exit 0 -- cgit v1.0