Files
nocode 7e40a565cc feat(fws-update): add system update utility script
Add fws-update script to provide a one-command system update solution accessible from taskbar, fws-hello menu, or terminal.

The script performs:
- System update via pacman -Syu
- Package cache cleanup (retains 2 latest versions)
- Orphaned package detection and optional removal
- Flatpak updates if available

Requires root privileges and prompts for user confirmation on orphan removal.
2026-07-04 12:56:57 +02:00

34 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
# FWS — mise à jour du système en une commande (bouton de la barre, fws-hello,
# ou terminal). pacman -Syu + nettoyage du cache + rapport des orphelins.
set -u
say() { printf '\n\033[1;34m==> %s\033[0m\n' "$*"; }
if [ "$(id -u)" -ne 0 ]; then
exec sudo "$0" "$@"
fi
say "Mise à jour du système (pacman -Syu)…"
pacman -Syu || { echo "Échec de la mise à jour (réseau ?)"; read -rp "Entrée pour fermer. " _; exit 1; }
if command -v paccache >/dev/null 2>&1; then
say "Nettoyage du cache des paquets (2 dernières versions gardées)…"
paccache -rk2
fi
ORPHANS="$(pacman -Qtdq 2>/dev/null)"
if [ -n "$ORPHANS" ]; then
say "Paquets orphelins (plus requis par rien) :"
echo "$ORPHANS"
read -rp "Les supprimer ? [o/N] " _rm
case "$_rm" in o|O|oui) echo "$ORPHANS" | pacman -Rns --noconfirm - ;; esac
fi
if command -v flatpak >/dev/null 2>&1; then
say "Mise à jour des Flatpaks…"
flatpak update -y || true
fi
say "Système à jour ✔"
read -rp "Entrée pour fermer. " _