fixed line breaks and script exit

This commit is contained in:
2026-02-15 19:02:36 +01:00
parent 1b262b55d7
commit 1c10ae2610
2 changed files with 21 additions and 18 deletions
@@ -14,11 +14,13 @@ bIsVlcInstalled=false
question_answered_with_yes() { question_answered_with_yes() {
local prompt="$1" local prompt="$1"
local ans local ans
# -r prevents backslash escapes being interpreted; -p prints the prompt # Use %b to interpret backslash escape sequences (\n, \t, etc.)
read -rp "$prompt [j/N]: " ans printf '%b\n Geben Sie j oder n ein und die Eingabetaste,\n Abbruch mit jeder anderen Taste ... [j/N]: ' "$prompt"
read -r ans
case "$ans" in case "$ans" in
j|J|ja|y|Y) return 0 ;; j|J|ja|y|Y) return 0 ;;
*) return 1 ;; n|N|"") return 1 ;;
*) echo "Abbruch."; exit 1 ;;
esac esac
} }
@@ -33,7 +35,7 @@ echo "
# Vorausgesetzt wird eine Installation von Linux Mint XFCE. # Vorausgesetzt wird eine Installation von Linux Mint XFCE.
# Das Skript bietet -teilweise interaktiv- die Installation von zusätzlichen Programmen an, die Linux Mint XFCE nicht standardmässig mitbringt. # Das Skript bietet -teilweise interaktiv- die Installation von zusätzlichen Programmen an, die Linux Mint XFCE nicht standardmässig mitbringt.
# #
# Zu Beginn werden -ohne weitere Rückfrage- die folgenden zusätzlichen Programme installiert: # Zu Beginn werden die folgenden zusätzlichen Programme in einem Schritt installiert:
# #
# xfce4-goodies (zusätzliche Elemente für die Taskleiste) # xfce4-goodies (zusätzliche Elemente für die Taskleiste)
# xfce4-panel-profiles (Tool für die Taskleistenbearbeitung) # xfce4-panel-profiles (Tool für die Taskleistenbearbeitung)
@@ -57,7 +59,7 @@ sSuffixDate=$(date '+%Y-%m-%d_%H:%M:%S')
echo echo
if question_answered_with_yes $'#### 64 bit Mint XFCE ; Zusatzprogramme ####\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes "#### Installiere Zusatzprogramme für 64 bit Mint XFCE? ####"; then
echo "#### 64 bit Mint XFCE ####" echo "#### 64 bit Mint XFCE ####"
sudo apt -y install xfce4-goodies clementine vlc htop hardinfo font-manager asunder gtkhash xfce4-panel-profiles sudo apt -y install xfce4-goodies clementine vlc htop hardinfo font-manager asunder gtkhash xfce4-panel-profiles
bIsVlcInstalled=true bIsVlcInstalled=true
@@ -70,7 +72,7 @@ echo
echo "#### nur auf Wunsch / bei Bedarf ####" echo "#### nur auf Wunsch / bei Bedarf ####"
echo echo
### Sensoren ### ### Sensoren ###
if question_answered_with_yes $' ### Sensoren ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Sensoren? ###"; then
echo "### Sensoren ###" echo "### Sensoren ###"
sudo apt install lm-sensors psensor sudo apt install lm-sensors psensor
sudo sensors-detect sudo sensors-detect
@@ -83,7 +85,7 @@ echo
echo echo
if [ "$bIsVlcInstalled" = true ]; then if [ "$bIsVlcInstalled" = true ]; then
echo "### Kauf-DVDs abspielen ###" echo "### Kauf-DVDs abspielen ###"
if question_answered_with_yes $' ### Film DVDs ###\n\tGeben Sie j oder n ein und die Eingabetaste,\n\tAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Paket um Film DVDs abspielen zu können? ###"; then
echo "### Kauf-DVDs abspielen ###" echo "### Kauf-DVDs abspielen ###"
sudo apt install libdvd-pkg sudo apt install libdvd-pkg
sudo dpkg-reconfigure libdvd-pkg sudo dpkg-reconfigure libdvd-pkg
@@ -99,7 +101,7 @@ echo
echo "### Schriften, falls Microsoft-Office-Dokumente weiterverwendet werden sollen oder Dokumentenaustausch mit Microsoft-Nutzern gewünscht ist ### echo "### Schriften, falls Microsoft-Office-Dokumente weiterverwendet werden sollen oder Dokumentenaustausch mit Microsoft-Nutzern gewünscht ist ###
## frei verfügbare, alte Microsoft-Standardschriften installieren:" ## frei verfügbare, alte Microsoft-Standardschriften installieren:"
if question_answered_with_yes $' ### M$ Schriften ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere M$ Schriften? ###"; then
echo "### M$ Schriften ###" echo "### M$ Schriften ###"
sudo apt install ttf-mscorefonts-installer sudo apt install ttf-mscorefonts-installer
fi fi
@@ -107,7 +109,7 @@ fi
echo echo
echo echo
echo " ## freie Google-Schriften als Ersatz für aktuelle MS-Standardschriften installieren:" echo " ## freie Google-Schriften als Ersatz für aktuelle MS-Standardschriften installieren:"
if question_answered_with_yes $' ### Google Schriften ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Google Schriften? ###"; then
echo echo
echo "### Google Schriften ###" echo "### Google Schriften ###"
@@ -117,7 +119,7 @@ if question_answered_with_yes $' ### Google Schriften ###\nGeben Sie j oder n ei
echo "" echo ""
echo "$fGoogleSchriften nicht gefunden." echo "$fGoogleSchriften nicht gefunden."
echo " soll das Archiv "google-fonts.tar.gz" von Github heruntergeladen werden? Es ist ca. 1,4GB gross! " echo " soll das Archiv "google-fonts.tar.gz" von Github heruntergeladen werden? Es ist ca. 1,4GB gross! "
if question_answered_with_yes $' ### Download Google Schriften ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Download Google Schriften ###"; then
_wgeturl="https://github.com/google/fonts/archive/main.tar.gz" _wgeturl="https://github.com/google/fonts/archive/main.tar.gz"
echo "Connecting to Github server to download fonts..." echo "Connecting to Github server to download fonts..."
wget "$_wgeturl" -O "$_gf.tar.gz" wget "$_wgeturl" -O "$_gf.tar.gz"
@@ -151,7 +153,7 @@ fi
echo echo
echo echo
echo "#### Chromium Browser installieren:" echo "#### Chromium Browser installieren:"
if question_answered_with_yes $' ### Chromium ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Chromium? ###"; then
echo "### Chromium ###" echo "### Chromium ###"
sudo apt install chromium-browser sudo apt install chromium-browser
sudo apt install chromium sudo apt install chromium
@@ -160,7 +162,7 @@ fi
echo echo
echo echo
echo "#### Vivaldi Browser installieren:" echo "#### Vivaldi Browser installieren:"
if question_answered_with_yes $' ### Vivaldi ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Vivaldi? ###"; then
echo "### ###" echo "### ###"
echo "## nötige Zusatzpakete installieren" echo "## nötige Zusatzpakete installieren"
sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https curl -y sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https curl -y
@@ -183,7 +185,7 @@ fi
echo echo
echo echo
echo "####Signal für Desktop (die Nutzung setzt eine Signal-Installation auf einem Android- Oder Apple-Gerät voraus!)#### " echo "####Signal für Desktop (die Nutzung setzt eine Signal-Installation auf einem Android- Oder Apple-Gerät voraus!)#### "
if question_answered_with_yes $' ### Signal ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Installiere Signal? ###"; then
echo "### ###" echo "### ###"
echo "## zusätzliches Repository nötig! echo "## zusätzliches Repository nötig!
## NOTE: These instructions only work for 64-bit Debian-based ## NOTE: These instructions only work for 64-bit Debian-based
@@ -210,7 +212,7 @@ echo
echo "Achtung! Es kann vorkommen, dass die Taskleiste nach diesem Schritt verschwunden ist." echo "Achtung! Es kann vorkommen, dass die Taskleiste nach diesem Schritt verschwunden ist."
echo "Ein Abmelden und Wiederanmelden des Benutzers oder ein Reboot behebt das Problem." echo "Ein Abmelden und Wiederanmelden des Benutzers oder ein Reboot behebt das Problem."
echo echo
if question_answered_with_yes $' ### Panel ###\nGeben Sie j oder n ein und die Eingabetaste,\nAbbruch mit jeder anderen Taste ...'; then if question_answered_with_yes " ### Änderungen am Panel durchführen? ###"; then
echo "### ###" echo "### ###"
echo "## Austausch der Panel-Konfigurationsdatei:" echo "## Austausch der Panel-Konfigurationsdatei:"
xfce4-panel-profiles load current-config.tar.bz2 xfce4-panel-profiles load current-config.tar.bz2
@@ -231,6 +233,5 @@ echo
echo "Wenn ### Google-Schriften ### installiert wurden: Anpassung der Standardschriften und/oder das Erstellen der Ersetzungstabelle in Libre Office, falls gewünscht." echo "Wenn ### Google-Schriften ### installiert wurden: Anpassung der Standardschriften und/oder das Erstellen der Ersetzungstabelle in Libre Office, falls gewünscht."
echo echo
echo echo
if question_answered_with_yes $' ### Um dieses Fenster zu schliessen, "Enter" drücken ###'; then read -p ' ### Um dieses Fenster zu schliessen, Enter drücken ### '
exit 0 exit 0
fi
+3 -1
View File
@@ -46,7 +46,9 @@ sh 02_start_container_with_image.sh
### Test the script file in the running container ### Test the script file in the running container
After container is started an interactive session was started in the container and the script can be started for testing After container is started an interactive session was started in the container and the script can be started for testing.
If script is changed on the host it just needs to be restarted in the container to reflect the changes.
This works because to folder is mounted into the container.
```bash ```bash
ls -al ls -al