Compartir actualizaciones de Arch Linux locamente 馃惂
Inicialmente tenia el titulo como tener tu repositorio local, pero realmente lo que compartes son tus actualizaciones y esta necesidad viene por el motivo que cada vez tengo mas dispositivos (en este momento son 4) con Arch, ¿porqu茅 te peguntaras? es que Arch es la polla de las Distros Linux (dir铆a el gran Baitybait) y tengo un internet de mierda el cual complica las actualizaciones constantes de Arch, en todos los dispositivos debido a su naturaleza Rolling Release.
Usando un servidor web 馃摙
Acceder al repositorio local 馃捇
- main-pc es el hostname o la IP est谩tica de la PC (192.168.1.10) el cual sirve de repositorio ✌️
Luego actualizamos, como lo hacemos normalmente.
$ sudo pacman -Syu
Para aclarar que este paso, se hace solo en las otras PC a actualizar 馃槈
- Antes de compartir es muy recomendable estar actualizado.
- Aunque en la wiki no se especifica, siempre antes de levantar el servidor es recomendable ejecutar nuevamente el comando para copiar la base de datos, hace poco * funcionaron repositorios y no me funcionaba.
- Si en el servidor no se encuentra un paquete se bajara del segundo repositorio de la lista y as铆 sucesivamente.
- Y si, Darkhttpd debes instalarlo 馃槅
* Git migration completed [mayo 2023].
Python en vez de Darkhttpd 馃
- Se crachea, es decir da error y se cierra a menudo, en medio de las actualizaciones.
- No permite retomar una actualizaci贸n, luego de que se cierre o de un error en la red, debe borrar la cache antes de re intentar actualizar.
Ademas se puede usar para montar una pagina WEB en Tor as铆 que por eso, Darkhttpd es la polla 馃悡
El script 馃槑
Los iconos son de una Nerd Fonts. |
#!/usr/bin/env bash
####### Formatos y Colores ######
FN='\e[1m' #Bold Brillante
FD='\e[2m' #Dim Oscuro
Fu='\e[4m' #Underlined subrayados
FB='\e[5m' #Blink titila
CR='\e[31m' #Red
CG='\e[32m' #Green
CY='\e[33m' #Yellow
CB='\e[34m' #Blue
CM='\e[35m' #Mangenta
CC='\e[36m' #Cyan
CO='\e[0;33m' #Orange
NC='\e[0m'
################################
# Limpiamos pantalla
clear
### Actualizando enlaces, permisos y mostrando informaci贸n del repositorio :D
echo -e "${CG}$NC ${FN}Activando repositorio local$NC $CB$NC"
echo -e "${CG}$NC Actualizando enlaces " \
" ($(sudo ln -sf /var/lib/pacman/sync/*.db /var/cache/pacman/pkg/ && echo -e " Correcto ${CG}✔$NC " || echo -e " Fallo $(Style red)✖$NC "))"
echo -e "${CG}⭯$NC Actualizando permisos" \
" ($(sudo chmod -R o+r /var/cache/pacman/pkg/ && echo -e " Correcto ${CG}✔$NC " || echo -e " Fallo $(Style red)✖$NC "))\n"
echo -e "${CG}$NC ${FN}Repositorio$NC"
# echo -e "${CG}馃摝$NC Paquetes [${CG}$(ls /var/cache/pacman/pkg/*.zst | wc -l)$NC] Tama帽o [${CG}$(du -hc /var/cache/pacman/pkg/ | grep total | gawk '{print $(NF-1)}')$NC]\n"
### Levantando servidor
echo -e "${CG}⭗$NC ${FN}Activando servidor WEB $NC"
darkhttpd /var/cache/pacman/pkg/ --no-server-id || echo -en "铴岶allo $(Style red)✖$NC "
exit 0
Si no sabes de Script, te dejo esta publicaci贸n b谩sica que realice.
Repositorio de tercero Chaotic-AUR
Ya les coste sobre este muy interesante repositorio aqu铆, para que tambi茅n puedas compartir estos paquetes hay que hacer dos cositas.
- Volver a ejecutar el comando que realiza los enlaces, con la base de datos en la PC servidor 馃憤
$ sudo ln -s /var/lib/pacman/sync/*.db /var/cache/pacman/pkg/ - Agregar de primero la direcci贸n de nuestro servidor, en la lista de repositorios de Chaotic-AUR ubicado en /etc/pacman.d/chaotic-mirrorlist de igual forma que lo realizamos anteriormente, en las PC clientes.
$ sudo nano /etc/pacman.d/chaotic-mirrorlist
En las otras PC deben estar habilitados los repositorios Chaotic-AUR, como lo indica la documentaci贸n oficial del repositorio.
Comentarios
Publicar un comentario
馃 con que esto tenemos...