En otra entrada publiqué un script para actualizar Arch y derivados de forma semiautomática con interfaz gŕafica. Esta vez tenemos un script que lo automatiza todo (para quienes quieran tenerlo todo actualizado cada vez que se enciende nuestro sistema). Aqui no hay opción de elegir paquetes a actualizar puesto que lo actualizará todo.
Este script corrige el fallo que de vez en cuando aparece en /var/lib/pacman/db.lck, que impide actualizar mediante el gestor de paquetes pacman, así que además podremos despreocuparnos al respecto.
Como siempre copiamos y pegamos en un archivo el siguiente código y lo guardamos. En este caso guárdelo como "update.sh" (sin comillas).
Este script corrige el fallo que de vez en cuando aparece en /var/lib/pacman/db.lck, que impide actualizar mediante el gestor de paquetes pacman, así que además podremos despreocuparnos al respecto.
Como siempre copiamos y pegamos en un archivo el siguiente código y lo guardamos. En este caso guárdelo como "update.sh" (sin comillas).
#!/bin/bash # Hasta que tengamos conexión comprobamos la misma. until ping -c1 google.com &>/dev/null do echo "No hay conexión. Reintentando en 5 segundos..." sleep 5 done usuario=`whoami` if [ -f "/var/lib/pacman/db.lck" ]; then echo $usuario | sudo -S rm /var/lib/pacman/db.lck fi # Sincronizamos las bases de datos de los paquetes echo $usuario | sudo -S pacman -Sy if [ $(pacman -Qqu | wc -l) = "0" ] # Hay actualizaciones? then # No hay que actualizar echo; echo " No hay actualizaciones disponibles."; echo else # Actualizamos echo $usuario | sudo -S pacman -Syu --noconfirm fi sleep 5A continuación le daremos permisos de ejecución:
chmod +x /ruta del archivo/update.shMovemos el archivo al directorio de sistema con:
sudo mv /home/usuario/ruta del archivo/update.sh/usr/binA partir de este momento se puede ejecutar desde la terminal de sistema escribiendo el comando update, o bien haciendo que se ejecute al inicio de sesión, editando los comandos que se ejecutan en el mismo.