From f7b1bd93a1146d109c9f332dfa7df4b04b0d9418 Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Mon, 10 Mar 2025 16:26:00 +0100 Subject: [PATCH] Feat: Manuelles setzen des Plymouth Themes. --- 8_Plymouth.sh | 49 ++++++++++++++++++++++++++++++++----------------- 1 file changed, 32 insertions(+), 17 deletions(-) diff --git a/8_Plymouth.sh b/8_Plymouth.sh index 40e4f8c..c8f090a 100755 --- a/8_Plymouth.sh +++ b/8_Plymouth.sh @@ -39,26 +39,41 @@ PLYMOUTH_THEME="spinner" echo "🎨 Setze Plymouth-Theme auf '$PLYMOUTH_THEME'..." # Sicherstellen, dass das Paket "plymouth" installiert ist -if command -v plymouth-set-default-theme &> /dev/null || { - echo "WARNUNG: Das Paket 'plymouth' ist nicht installiert. Es wird versucht, es zu installieren..." - sudo apt update && sudo apt install -y plymouth || { - echo "WARNUNG: Das Paket 'plymouth' konnte nicht installiert werden. Überspringe diesen Schritt." - false - } -}; then - # Überprüfen, ob die Variable PLYMOUTH_THEME gesetzt ist - if [[ -n "$PLYMOUTH_THEME" ]]; then - # Den Plymouth-Theme-Befehl ausführen - if plymouth-set-default-theme -R "$PLYMOUTH_THEME"; then - echo "Das Plymouth-Theme wurde erfolgreich auf '$PLYMOUTH_THEME' gesetzt." - else - echo "WARNUNG: Der Befehl 'plymouth-set-default-theme' konnte nicht ausgeführt werden. Überspringe diesen Schritt." - fi +if command -v plymouth-set-default-theme &> /dev/null; then + # Den Plymouth-Theme-Befehl ausführen + if plymouth-set-default-theme -R "$PLYMOUTH_THEME"; then + echo "Das Plymouth-Theme wurde erfolgreich auf '$PLYMOUTH_THEME' gesetzt." else - echo "WARNUNG: Die Variable PLYMOUTH_THEME ist nicht gesetzt. Überspringe diesen Schritt." + echo "WARNUNG: Der Befehl 'plymouth-set-default-theme' konnte nicht ausgeführt werden. Versuche, das Theme manuell zu setzen..." fi else - echo "WARNUNG: Der Befehl 'plymouth-set-default-theme' ist nicht verfügbar. Überspringe diesen Schritt." + echo "WARNUNG: Der Befehl 'plymouth-set-default-theme' ist nicht verfügbar. Versuche, das Theme manuell zu setzen..." +fi + +# Manuelles Setzen des Plymouth-Themes +PLYMOUTH_DIR="/usr/share/plymouth/themes" +PLYMOUTH_THEME_FILE="$PLYMOUTH_DIR/$PLYMOUTH_THEME/$PLYMOUTH_THEME.plymouth" +PLYMOUTH_CONFIG="/etc/plymouth/plymouthd.conf" + +if [[ -f "$PLYMOUTH_THEME_FILE" ]]; then + if [[ -f "$PLYMOUTH_CONFIG" ]]; then + sudo sed -i "s|^Theme=.*|Theme=$PLYMOUTH_THEME|" "$PLYMOUTH_CONFIG" + echo "Das Plymouth-Theme wurde manuell auf '$PLYMOUTH_THEME' gesetzt." + else + echo "WARNUNG: Die Datei '$PLYMOUTH_CONFIG' wurde nicht gefunden. Erstelle die Datei und setze das Theme..." + echo -e "[Daemon]\nTheme=$PLYMOUTH_THEME\n" | sudo tee "$PLYMOUTH_CONFIG" > /dev/null + echo "Die Datei '$PLYMOUTH_CONFIG' wurde erstellt und das Theme wurde gesetzt." + fi +else + echo "WARNUNG: Das Theme '$PLYMOUTH_THEME' existiert nicht unter '$PLYMOUTH_DIR'. Überspringe diesen Schritt." +fi + +# Initramfs aktualisieren, um die Änderungen zu übernehmen +echo "🔄 Aktualisiere Initramfs..." +if sudo update-initramfs -u; then + echo "Initramfs wurde erfolgreich aktualisiert." +else + echo "WARNUNG: Initramfs konnte nicht aktualisiert werden." fi # Kernel-Boot-Parameter in GRUB anpassen