Arregla bug de trap RETURN en pkgsync.sh y quita mención stale a DavMail

trap RETURN persiste entre retornos de función en bash, no solo el de la
función que lo puso: al volver de compute_diff/cmd_push/cmd_audit hacia
arriba en la pila, volvía a dispararse sobre un $work ya fuera de scope
('work: variable sin asignar' bajo set -u). Cambiado a rm -rf explícito en
cada punto de salida.

DavMail se desinstaló del sistema; ya no debía aparecer en la lista de apps.
This commit is contained in:
Josevi
2026-08-18 11:08:54 +02:00
parent c074095d68
commit d1077f0547
2 changed files with 6 additions and 4 deletions
+5 -3
View File
@@ -183,7 +183,6 @@ write_group_file() {
compute_diff() {
local work
work="$(mktemp -d)"
trap 'rm -rf "$work"' RETURN
{ declared_array PACMAN_COMMON; declared_array AUR_COMMON; printf '%s\n' "${CRITICAL_PACKAGES[@]}"; } | sort -u >"$work/declared_arch"
declared_array FLATPAK_COMMON | sort -u >"$work/declared_flatpak"
@@ -195,6 +194,8 @@ compute_diff() {
mapfile -t TO_REVIEW_REMOVE_ARCH < <(comm -13 "$work/declared_arch" "$work/installed_arch" | comm -23 - "$work/overrides")
mapfile -t TO_INSTALL_FLATPAK < <(comm -23 "$work/declared_flatpak" "$work/installed_flatpak" | comm -23 - "$work/overrides")
mapfile -t TO_REVIEW_REMOVE_FLATPAK < <(comm -13 "$work/declared_flatpak" "$work/installed_flatpak" | comm -23 - "$work/overrides")
rm -rf "$work"
}
print_list() {
@@ -283,7 +284,6 @@ cmd_push() {
local work
work="$(mktemp -d)"
trap 'rm -rf "$work"' RETURN
installed_pacman_native | sort -u >"$work/inst_native"
installed_pacman_foreign | sort -u >"$work/inst_foreign"
@@ -314,6 +314,7 @@ cmd_push() {
patch_array_file "$pc" AUR_COMMON "$remove_aur" "$add_aur"
patch_array_file "$pc" FLATPAK_COMMON "$remove_flatpak" "$add_flatpak"
rm -rf "$work"
write_group_file
cd "$REPO_DIR" || return 0
@@ -409,7 +410,6 @@ cmd_incoming() {
cmd_audit() {
local work
work="$(mktemp -d)"
trap 'rm -rf "$work"' RETURN
{ declared_array PACMAN_COMMON; declared_array AUR_COMMON; printf '%s\n' "${CRITICAL_PACKAGES[@]}"; overrides_packages; } | sort -u >"$work/declared_arch"
{ declared_array FLATPAK_COMMON; overrides_packages; } | sort -u >"$work/declared_flatpak"
@@ -430,6 +430,8 @@ cmd_audit() {
echo "(nota: los paquetes específicos de KDE/GNOME hardcodeados en <de>/setup.sh"
echo " -- plasma-desktop, sddm, temas AUR, etc. -- siempre van a salir aquí: no"
echo " viven en los arrays de packages-common.sh por diseño, no es drift real)"
rm -rf "$work"
}
usage() {