kupdates-void.ksh: update to 1.0

This commit is contained in:
Tuxliban Torvalds 2023-05-25 20:41:52 -06:00
parent b5c7edbc0d
commit 187d1eaeda
1 changed files with 16 additions and 14 deletions

View File

@ -1,4 +1,6 @@
#!/bin/ksh #!/bin/ksh
# v1.0 - 25/05/2023
#
# Script que revisa si existen actualizaciones disponibles para el sistema # Script que revisa si existen actualizaciones disponibles para el sistema
# Dependencas: dzen2 # Dependencas: dzen2
# #
@ -8,15 +10,15 @@
# 3 - Paquetes rotos # 3 - Paquetes rotos
# 4 - Operación exitosa, pero no hubo cambios # 4 - Operación exitosa, pero no hubo cambios
# #
# NOTA: count_lines es una función personalizada de ksh # NOTA: 'countl' es una función personalizada de ksh
# #
# Autor: Tuxliban Torvalds <o-sanchez@linuxmail.org> 2022 - 2023 # Autor: O. Sánchez <o-sanchez@linuxmail.org> 2022 - 2023
TMP_UPDATES=$(mktemp -d /tmp/updates_void.XXXX) tmp_updates=$(mktemp -d /tmp/updates_void.XXXX)
xbps-install -nuM 1>${TMP_UPDATES}/updates 2>${TMP_UPDATES}/error xbps-install -nuM 1>${tmp_updates}/updates 2>${tmp_updates}/error
UPDATES="$(count_lines ${TMP_UPDATES}/updates)" updates="$(countl ${tmp_updates}/updates)"
BROKEN="$(< ${TMP_UPDATES}/error)" broken="$(< ${tmp_updates}/error)"
PKGS="$(awk '{printf "%-25s %s\n", $1, $2}' ${TMP_UPDATES}/updates)" pkgs="$(awk '{printf "%-25s %s\n", $1, $2}' ${tmp_updates}/updates)"
function deps { function deps {
@ -32,18 +34,18 @@ function msg {
} }
if deps; then if deps; then
if [[ -z $BROKEN && -n $UPDATES ]]; then if [[ -z $broken && -n $updates ]]; then
"$HOME"/Dropbox/Gitea/scripts/varios/dunst_sound 2> /dev/null "$HOME"/Dropbox/Gitea/scripts/varios/dunst_sound 2> /dev/null
printf '%s\n' "ACTUALIZACIONES DISPONIBLES: $UPDATES" "$PKGS" | msg & printf '%s\n' "ACTUALIZACIONES DISPONIBLES: $updates" "$pkgs" | msg &
rm -r ${TMP_UPDATES} rm -rf ${tmp_updates}
exit 0 exit 0
elif [[ -n $BROKEN ]]; then elif [[ -n $broken ]]; then
printf '%s\n' "HAY PAQUETES ROTOS" "$(awk '{printf "%-30s %s\n", $1, $5}' \ printf '%s\n' "HAY PAQUETES ROTOS" "$(awk '{printf "%-30s %s\n", $1, $5}' \
${TMP_UPDATES}/error)" | msg & ${tmp_updates}/error)" | msg &
rm -r ${TMP_UPDATES} rm -rf ${tmp_updates}
exit 3 exit 3
else else
[[ -z $UPDATES ]] || rm -r ${TMP_UPDATES} [[ -z $updates ]] || rm -rf ${tmp_updates}
exit 4 exit 4
fi fi
fi fi