Mejorar la descarga de programas desde AUR

axel aur

La semana pasada tuve muchos problemas para descargar un paquete desde AUR que necesitaba, pero por una u otra razón no lograba descargar.

La descarga del archivo representaba más de 500 MB y una conexión a internet inestable no ayudaba mucho.

Anteriormente había configurado pacman para que usara gestores de descarga como wget o aria2. Pero ese consejo no aplica a yaourt, la herramienta que utilizo en manjaro para descargar programas desde AUR.

Después de una breve investigación logré hacer el ajuste ganador. Curiosamente no fue con curl, ni con wget, tampoco con mi campeón aria2, no, en esta ocasión el ganador fue axel.

Configurar yaourt para que use axel.

Lograr que yaourt utilice axel para manejar las descargas de los archivos no fue difícil. Un detalle curioso, esta modificación no es en el archivo de configuración de yaourt, en su lugar, se edita el archivo de configuración de makepkg que es el que se encarga de las descargas de los archivos.

Para cambiar el gestor de descargas hay que editar el archivo makepkg.conf

sudo gedit /etc/makepkg.conf

Se puede comentar o reemplazar esto…

DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
'rsync::/usr/bin/rsync --no-motd -z %u %o'
'scp::/usr/bin/scp -C %u %o')

por esto otro…

DLAGENTS=('ftp::/usr/bin/axel   -n 5 -v -a -s 102400 %u -o %o'
'http::/usr/bin/axel  -n 5 -v -a -s 102400 %u -o %o'
'https::/usr/bin/axel -n 5 -v -a -s 102400 %u -o %o'
'rsync::/usr/bin/rsync -z %u %o'
'scp::/usr/bin/scp -C %u %o')

Como pueden ver, se cambia el programa encargado dependiendo del protocolo. Axel maneja sin problemas http, https y ftp.

Además con -s 102400 limito la velocidad de la descarga a 100 kbps, para no saturar mi inestable conexión a internet.

Hechos los cambios solo falta descargar los programas que necesitemos en AUR usando yaourt y eso es todo.

Axel tiene la ventaja de acelerar un poco las descargas ya que usa múltiples conexiones (divide y vencerás).  Además de que es bastante tolerante a los problemas de conexión.

Aún con todos estos cambios tuve que hacer varios intentos. Al parecer era un problema en el servidor que tenía alojado el archivo porque después de unos días de intentarlo se descargó sin mayor novedad.

Connection time out | descarga de programas desde AUR
A esto me estaba enfrentando.. “Connection time out” frecuentes.

Son las mismas instrucciones para cambiar el gestor a wget o aria2, pero hay que tener cuidado con los parámetros, porque son distintos para cada programa.

Luego tuve otros problemas, pero eso será tema de otro artículo.

¡Hasta la próxima!.

Enlaces.