From 869fac02d86903e90226b29aad337ed1dc33c49c Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Wed, 26 Mar 2025 12:46:22 +0100 Subject: [PATCH] =?UTF-8?q?Feat:=20Passt=20das=20Skript=20f=C3=BCr=20Arch?= =?UTF-8?q?=20an.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 6_Plymouth.sh | 54 ++++++++++++++++++++++++++++++++++++++++++++++ 8_Plymouth.sh | 59 --------------------------------------------------- 2 files changed, 54 insertions(+), 59 deletions(-) create mode 100755 6_Plymouth.sh delete mode 100755 8_Plymouth.sh diff --git a/6_Plymouth.sh b/6_Plymouth.sh new file mode 100755 index 0000000..7e147db --- /dev/null +++ b/6_Plymouth.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +set -e # Skript bricht bei Fehlern ab + +# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird +if [[ $EUID -ne 0 ]]; then + echo "❌ Dieses Skript muss als root ausgeführt werden." + exit 1 +fi + +echo "🔄 Plymouth und benötigte Pakete installieren..." +if ! pacman -Q plymouth &>/dev/null; then + pacman -Syu --noconfirm plymouth plymouth-theme-arch +else + echo "✅ Plymouth ist bereits installiert." +fi + +# Plymouth in initramfs aktivieren +MKINIT_CONF="/etc/mkinitcpio.conf" +if [[ -f "$MKINIT_CONF" ]]; then + if grep -q "^HOOKS=" "$MKINIT_CONF"; then + sed -i 's/^HOOKS=.*/HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)/' "$MKINIT_CONF" + else + echo 'HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)' >>"$MKINIT_CONF" + fi +fi + +# Initramfs neu erstellen +echo "🔄 Initramfs wird aktualisiert..." +mkinitcpio -P + +# Arch Plymouth-Theme setzen +echo "🎨 Setze Plymouth-Theme auf 'arch'..." +plymouth-set-default-theme -R arch + +# Kernel-Boot-Parameter in systemd-boot anpassen +BOOT_LOADER_CONF="/boot/loader/entries/arch.conf" + +if [[ -f "$BOOT_LOADER_CONF" ]]; then + echo "🔍 Überprüfe systemd-boot-Konfiguration..." + NEW_CMDLINE="quiet splash vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles" + + # Kernel-Parameter anpassen + if grep -q "options=" "$BOOT_LOADER_CONF"; then + sed -i "s|^options=.*|options=\"$NEW_CMDLINE\"|" "$BOOT_LOADER_CONF" + else + echo "options=\"$NEW_CMDLINE\"" >>"$BOOT_LOADER_CONF" + fi +else + echo "❌ systemd-boot Konfigurationsdatei nicht gefunden!" + exit 1 +fi + +echo "✅ Einrichtung abgeschlossen. Bitte starte das System neu, um die Änderungen zu übernehmen." diff --git a/8_Plymouth.sh b/8_Plymouth.sh deleted file mode 100755 index 25a8d95..0000000 --- a/8_Plymouth.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -set -e # Skript bricht bei Fehlern ab - -# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird -if [[ $EUID -ne 0 ]]; then - echo "❌ Dieses Skript muss als root ausgeführt werden." - exit 1 -fi - -echo "🔄 Plymouth und benötigte Pakete installieren..." -if ! dpkg -l | grep -qw plymouth; then - apt update && apt install -y plymouth plymouth-themes -else - echo "✅ Plymouth ist bereits installiert." -fi - -# Plymouth in initramfs aktivieren -MKINIT_CONF="/etc/mkinitcpio.conf" -if [[ -f "$MKINIT_CONF" ]]; then - if grep -q "^HOOKS=" "$MKINIT_CONF"; then - sed -i 's/^HOOKS=.*/HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)/' "$MKINIT_CONF" - else - echo 'HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)' >>"$MKINIT_CONF" - fi -fi - -# Falls Dracut genutzt wird, initramfs neu erstellen -if command -v dracut &>/dev/null; then - echo "🔄 Dracut erkannt, erstelle neues initramfs..." - dracut -f -else - echo "🔄 Initramfs wird aktualisiert..." - update-initramfs -u -fi - -# Plymouth-Theme setzen -PLYMOUTH_THEME="spinner" -echo "🎨 Setze Plymouth-Theme auf '$PLYMOUTH_THEME'..." -plymouth-set-default-theme -R "$PLYMOUTH_THEME" - -# Kernel-Boot-Parameter in GRUB anpassen -GRUB_CFG="/etc/default/grub" -GRUB_BACKUP="/etc/default/grub.bak" - -echo "🔍 Überprüfe GRUB-Einstellungen..." -NEW_CMDLINE="quiet splash vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles" - -if grep -q "^GRUB_CMDLINE_LINUX_DEFAULT=.*" "$GRUB_CFG"; then - sed -i "s|^GRUB_CMDLINE_LINUX_DEFAULT=.*|GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"|" "$GRUB_CFG" - echo "🔄 GRUB wird aktualisiert..." - update-grub -else - echo "GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"" >>"$GRUB_CFG" - echo "🔄 GRUB wird aktualisiert..." - update-grub -fi - -echo "✅ Einrichtung abgeschlossen. Bitte starte das System neu, um die Änderungen zu übernehmen."