Skip configuration if plymouth was already installed

This helps us skip the installer if something else on initial all failed
and we need to run things again.
This commit is contained in:
David Heinemeier Hansson
2025-07-09 18:28:48 -07:00
parent 4df84da6e1
commit c5ada676ae

View File

@ -4,8 +4,8 @@
echo "Installing Plymouth..." echo "Installing Plymouth..."
yay -S --noconfirm --needed plymouth yay -S --noconfirm --needed plymouth
# Skip if plymouth already exists for some reason if ! command -v plymouth &>/dev/null; then
if ! grep -q "^HOOKS=.*plymouth" /etc/mkinitcpio.conf; then # Skip if plymouth already exists for some reason
# Backup original mkinitcpio.conf just in case # Backup original mkinitcpio.conf just in case
backup_timestamp=$(date +"%Y%m%d%H%M%S") backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/mkinitcpio.conf "/etc/mkinitcpio.conf.bak.${backup_timestamp}" sudo cp /etc/mkinitcpio.conf "/etc/mkinitcpio.conf.bak.${backup_timestamp}"
@ -18,15 +18,12 @@ if ! grep -q "^HOOKS=.*plymouth" /etc/mkinitcpio.conf; then
else else
echo "Couldn't add the Plymouth hook" echo "Couldn't add the Plymouth hook"
fi fi
else
echo "Plymouth already present in mkinitcpio.conf HOOKS"
fi
# Regenerate initramfs # Regenerate initramfs
sudo mkinitcpio -P sudo mkinitcpio -P
# Add kernel parameters for Plymouth (systemd-boot only) # Add kernel parameters for Plymouth (systemd-boot only)
if [ -d "/boot/loader/entries" ]; then if [ -d "/boot/loader/entries" ]; then
echo "Detected systemd-boot" echo "Detected systemd-boot"
for entry in /boot/loader/entries/*.conf; do for entry in /boot/loader/entries/*.conf; do
@ -45,7 +42,7 @@ if [ -d "/boot/loader/entries" ]; then
fi fi
fi fi
done done
elif [ -f "/etc/default/grub" ]; then elif [ -f "/etc/default/grub" ]; then
# Backup GRUB config before modifying # Backup GRUB config before modifying
backup_timestamp=$(date +"%Y%m%d%H%M%S") backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/default/grub "/etc/default/grub.bak.${backup_timestamp}" sudo cp /etc/default/grub "/etc/default/grub.bak.${backup_timestamp}"
@ -74,15 +71,16 @@ elif [ -f "/etc/default/grub" ]; then
else else
echo "GRUB already configured with splash kernel parameters" echo "GRUB already configured with splash kernel parameters"
fi fi
else else
echo "" echo ""
echo "Neither systemd-boot nor GRUB detected. Please manually add these kernel parameters:" echo "Neither systemd-boot nor GRUB detected. Please manually add these kernel parameters:"
echo " - splash (to see the graphical splash screen)" echo " - splash (to see the graphical splash screen)"
echo " - quiet (for silent boot)" echo " - quiet (for silent boot)"
echo "" echo ""
fi
# Copy and set the Plymouth theme
sudo cp -r "$HOME/.local/share/omarchy/default/plymouth" /usr/share/plymouth/themes/omarchy/
sudo plymouth-set-default-theme -R omarchy
fi fi
# Copy and set the Plymouth theme
sudo cp -r "$HOME/.local/share/omarchy/default/plymouth" /usr/share/plymouth/themes/omarchy/
sudo plymouth-set-default-theme -R omarchy