vsReflector Manager: gestor visual de mirrors para Arch Linux

vsReflector Manager: gestor visual de mirrors para Arch Linux

Introducción

Si usan Arch Linux, saben que tener una buena mirrorlist marca la diferencia en la velocidad de las descargas. El problema es que gestionar mirrors siempre ha sido cosa de terminal: reflector, editar archivos a mano, recordar flags y sintaxis. Por eso desarrollé vsReflector Manager, una interfaz gráfica moderna con GTK4 y libadwaita que centraliza toda la gestión de mirrors en un solo lugar.

La idea fue simple: poder inspeccionar, probar y generar mirrorlists sin tener que acordarme de los parámetros de reflector cada vez.


¿Qué es vsReflector Manager?

Es un administrador visual de mirrors para Arch Linux escrito en Python 3 con GTK4 y libadwaita. Funciona como una envoltura gráfica de reflector, pero va mucho más allá: hace pruebas de conectividad reales (DNS, TCP, TLS) contra cada mirror, gestiona backups automáticos, configura pacman y hasta soporta repositorios Chaotic AUR.

Todo lo que normalmente requiere varias terminales y comandos, aquí está en ventanas y pestañas.


Características principales

Dashboard

Una vista general que muestra en vivo la fuente de los mirrors (mirrorlist del sistema, API de Arch Linux o dataset de demostración), el conteo total, la latencia media y el mejor candidato disponible.

Visor de mirrors

Cada mirror se muestra con su país, protocolo, antigüedad de sincronización, latencia estimada y estado de salud. Incluye chips de filtro para acotar por fuente, protocolo o estado.

Live Tests

La funcionalidad que más me gusta. Abre conexiones DNS, TCP y TLS reales contra cada mirror y mide el rendimiento en tiempo real. Las pruebas se pueden cancelar por sesión y al finalizar puedes aplicar automáticamente el mirror con mejor resultado.

Generador de mirrorlists

Construye una nueva mirrorlist usando reflector con todos los parámetros desde la interfaz: países, protocolos, antigüedad, estrategia de ordenamiento, timeout y flags IPv4/IPv6. Muestra un diff unificado contra la mirrorlist actual antes de aplicar, y al hacerlo crea un backup automático con marca de tiempo.

Settings

Todas las opciones de filtro de reflector en una UI con selector de países, checkboxes de protocolos y campos numéricos. Los settings se guardan automáticamente al cerrar.

Chaotic AUR

Detección inteligente del estado del repositorio:

  • No instalado — muestra los comandos oficiales para instalarlo
  • Instalado pero no configurado — muestra el snippet necesario para pacman.conf
  • Listo — lista completa de mirrors con interruptores on/off, sondas de latencia y opción “Apply Best Mirror”

Configuración de pacman

Modifica /etc/pacman.conf desde la interfaz: activar ILoveCandy (esa barra de progreso estilo Pac-Man), ParallelDownloads (de 1 a 20) y repositorios opcionales como multilib, core-testing, extra-testing y multilib-testing.


Instalación

AUR (recomendado)

yay -S vsreflector-manager

Manual

git clone https://github.com/victorsosaMx/vsReflector-Manager.git
cd vsReflector-Manager
chmod +x vsreflector-manager
./vsreflector-manager

Requisitos

  • Python 3.11 o superior
  • python-gobject
  • GTK4 y libadwaita
  • polkit (para escribir en /etc/pacman.d/)

Opcionales

  • reflector (necesario para generar mirrorlists)
  • python-gdkpixbuf2 / gdk-pixbuf2 (para el icono en la pestaña About)

Seguridad

Todos los cambios que afectan archivos del sistema se hacen mediante pkexec, lo que dispara el diálogo de autenticación polkit antes de escribir en /etc/pacman.d/mirrorlist o /etc/pacman.conf. Ninguna operación crítica se ejecuta sin permiso explícito.


Enlaces


Si usan Arch Linux y quieren dejar de pelearse con la terminal cada vez que necesitan optimizar mirrors, esta herramienta les va a ahorrar bastante tiempo. Especialmente los Live Tests y el diff preview antes de aplicar cambios, que evitan sorpresas.

Víctor Sosa 17 May 2026 linux, python, gtk4, libadwaita, arch, reflector, mirror, editor-visual permalink
Anterior vsWallpaper-Effect: efectos animados para tu wallpaper en… Siguiente Cómo instalar OpenClaw en tu servidor local y conectarlo a…