From 835b6b0040c039b2c2d4a181f81f06788ca7ce9f Mon Sep 17 00:00:00 2001 From: Pathfinder Date: Mon, 2 Nov 2026 16:16:37 +0100 Subject: [PATCH] Always-packages: p7zip -> 7zip (retired in F44) + resilient loop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit YuKu's expanded always-section died at section 6: p7zip was RETIRED from Fedora 44 (replaced by the official '7zip' package) -> the compression line's transaction failed -> set -e killed the whole install after everything before it had already succeeded. Two changes: - p7zip -> 7zip in the Compression line (unace/unrar verified fine: they live in RPM Fusion, which base enables). - The always-loop now warns in red per failing category line and continues — same resilience contract as the advanced menu. One missing package can no longer abort a 30-minute install at the finish line. Harness: healthy run installs everything incl. 7zip/mpv/wget; a deliberately broken compression line produces the red Failed block, 'finished with failures' summary, exit 0, and later categories (mpv, wget...) still install. --- setup.sh | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/setup.sh b/setup.sh index d690993..f086a63 100755 --- a/setup.sh +++ b/setup.sh @@ -384,7 +384,8 @@ ALWAYS_PACKAGES=( # Internet "wget" # Compression tools - "zip gzip p7zip unace unrar xarchiver" + # (p7zip was RETIRED in Fedora 44; '7zip' is the official replacement) + "zip gzip 7zip unace unrar xarchiver" # Office and Editors "libreoffice" # Multimedia @@ -394,11 +395,21 @@ ALWAYS_PACKAGES=( step "6 Always-installed packages" rule +always_failed="" for category in "${ALWAYS_PACKAGES[@]}"; do # shellcheck disable=SC2086 - install_packages $category + if ! install_packages $category; then + color_red " Failed: $category" + color_red " (a package in this line has no match — the rest of the install continues)" + always_failed="yes" + pause_if_debug + fi done -ok "Always-packages installed." +if [[ -z "$always_failed" ]]; then + ok "Always-packages installed." +else + warn "Always-packages finished with failures (see red lines above)." +fi pause_if_debug #------------------------------------------