Hola Fronters 👋
Bienvenidos a la cuarta entrega de nuestra serie sobre administración de paquetería en Linux. Hasta ahora hemos explorado APT (Debian/Ubuntu), DNF/YUM (Fedora/RHEL) y Pacman (Arch Linux). Hoy nos adentramos en el fascinante mundo de gestores de paquetes menos mainstream pero igualmente poderosos.
Si te perdiste las entregas anteriores, te recomiendo repasarlas para tener el contexto completo:
Gentoo Linux — Portage (emerge)
Gentoo es la distribución del código fuente. A diferencia de las distribuciones binarias tradicionales, Gentoo compila cada paquete desde su fuente directamente en tu máquina, optimizado específicamente para tu hardware. Esto se logra mediante Portage, su sistema de gestión de paquetes basado en Python.
Portage se maneja principalmente con el comando emerge, aunque eselect es su complemento esencial para gestionar versiones y configuraciones del sistema.
emerge — El corazón de Portage
Buscar un paquete:
emerge --search firefox
emerge --searchdesc "web browser" # buscar en descripción
Instalar un paquete:
emerge --ask www-client/firefox # --ask pide confirmación
emerge --ask --verbose vim # modo verbose
Actualizar el sistema:
emerge --sync # sincronizar repositorio
emerge --update --deep --newuse @world # actualizar todo
Eliminar un paquete:
emerge --depclean # limpiar dependencias huérfanas
emerge --ask --unmerge firefox # desinstalar
Información del paquete:
emerge --info # información del sistema Portage
emerge --pretend www-client/firefox # simular instalación
equery list "*" # listar paquetes instalados (requiere app-portage/gentoolkit)
USE Flags — Personalización extrema
Las USE flags son la característica más distintiva de Gentoo. Te permiten activar o desactivar funcionalidades específicas en los paquetes. Por ejemplo, si no quieres soporte para X11 en Vim:
# /etc/portage/make.conf
USE="-X -gnome alsa pulseaudio threads"
Puedes establecer flags globalmente en make.conf o por paquete en /etc/portage/package.use:
# /etc/portage/package.use
www-client/firefox -pulseaudio
app-editors/vim X
eselect — El gestor de versiones
eselect permite alternar entre versiones instaladas de un mismo paquete o definir el kernel/perfil activo:
eselect profile list # listar perfiles disponibles
eselect profile set 1 # cambiar perfil
eselect kernel list # kernels instalados
eselect kernel set 1 # seleccionar kernel activo
eselect python list # versiones de Python
eselect python set 3 # cambiar versión por defecto
eselect news read # leer noticias del repositorio
make.conf — El archivo de configuración
Todo Gentoo gira en torno a /etc/portage/make.conf. Aquí defines desde las USE flags hasta los mirrors y opciones de compilación:
# /etc/portage/make.conf
COMMON_FLAGS="-march=native -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
MAKEOPTS="-j$(nproc)" # núcleos para compilación paralela
ACCEPT_LICENSE="*" # aceptar todas las licencias
GENTOO_MIRRORS="https://mirror.rackspace.com/gentoo/"
Slackware Linux — pkgtool y slackpkg
Slackware es la distribución viva más antigua. Su filosofía: simplicidad, estabilidad y herencia UNIX. Slackware no resuelve dependencias automáticamente — el administrador decide qué instalar. Esto le da un control total pero requiere más conocimiento.
pkgtools — El juego original
installpkg /ruta/al/paquete.txz # instalar paquete
removepkg nombre-del-paquete # eliminar paquete
upgradepkg --install-new paquete.txz # actualizar paquete
explodepkg paquete.txz # extraer contenido sin instalar
makepkg nombre.tgz directorio/ # crear paquete desde carpeta
Listar paquetes instalados:
ls /var/log/packages/ # cada paquete es un archivo de texto
pkginfo paquete # información detallada
slackpkg — El gestor con repositorios
Slackware incluye slackpkg como capa sobre pkgtools para manejar repositorios oficiales:
slackpkg update # actualizar lista de paquetes
slackpkg install firefox # instalar desde repositorio
slackpkg remove firefox # eliminar
slackpkg upgrade-all # actualizar todo el sistema
slackpkg search firefox # buscar paquete
slackpkg blacklist firefox # excluir de actualizaciones
slackpkg clean-system # eliminar paquetes no oficiales
sbopkg (herramienta de terceros) te permite compilar e instalar paquetes desde SlackBuilds.org, el repositorio comunitario de Slackware.
💡 Dato curioso: Slackware usa
.txzcomo formato — un .tar.xz. Anteriormente usaba .tgz (tar+gzip). No tiene gestor de dependencias por diseño: tú decides si un paquete necesita librerías X o Y.
openSUSE — Zypper
Zypper es el gestor nativo de openSUSE (Tumbleweed y Leap). Es robusto, rápido y con una sintaxis muy clara.
zypper search firefox # buscar paquete
zypper install firefox # instalar
zypper remove firefox # eliminar
zypper update # actualizar repositorios
zypper update firefox # actualizar paquete específico
zypper dup # actualización de distribución (Tumbleweed)
zypper list-updates # listar actualizaciones disponibles
zypper info firefox # información del paquete
zypper ps # procesos usando librerías actualizadas
zypper repos # listar repositorios
zypper addrepo https://... repo-name # agregar repositorio
zypper removerepo repo-name # eliminar repositorio
zypper clean # limpiar caché
Zypper también se integra bien con YaST, la herramienta gráfica de administración de openSUSE. Puedes usar yast2 sw_single para una interfaz visual de gestión de paquetes.
Solus — eopkg
Solus es una distribución independiente (no derivada de Debian, Arch ni RHEL) que usa eopkg, originalmente basado en PiSi de Pardus.
eopkg search firefox # buscar
eopkg install firefox # instalar
eopkg remove firefox # eliminar
eopkg update-repo # actualizar repositorios
eopkg upgrade # actualizar sistema
eopkg info firefox # info del paquete
eopkg list-installed # paquetes instalados
eopkg history # historial de operaciones
eopkg checkpoint # crear punto de restauración
eopkg clean # limpiar caché
Solus usa un repositorio rodante (rolling release) llamado Shannon. eopkg tiene una función única: eopkg checkpoint permite revertir cambios en el sistema, algo similar a los puntos de restauración de Windows.
Void Linux — XBPS
Void Linux es una distribución independiente, conocida por usar runit como init system (en lugar de systemd) y XBPS (X Binary Package System) como gestor de paquetes.
xbps-query -Rs firefox # buscar paquete
xbps-install -S firefox # sincronizar repos e instalar
xbps-install -Su # actualizar todo el sistema
xbps-remove firefox # eliminar paquete
xbps-query -p pkgver firefox # versión instalada
xbps-query -l # listar todos los paquetes
xbps-query -O firefox # información del paquete en repo
xbps-reconfigure -a # reconfigurar todos los paquetes
xbps-alternatives -l # listar alternativas (como eselect)
Void también tiene xi, un wrapper que simplifica la instalación:
xi firefox # = xbps-install -S firefox
xq firefox # = xbps-query -Rs firefox
xr firefox # = xbps-remove firefox
Tabla comparativa rápida
+------------+------------+------------------+-------------------+
| Distro | Gestor | Formato paquete | Resuelve deps? |
+------------+------------+------------------+-------------------+
| Gentoo | Portage | ebuild (fuente) | Sí |
| | (emerge) | .tbz2 (binario) | |
+------------+------------+------------------+-------------------+
| Slackware | pkgtools | .txz | No (manual) |
| | +slackpkg | | |
+------------+------------+------------------+-------------------+
| openSUSE | Zypper | .rpm | Sí |
+------------+------------+------------------+-------------------+
| Solus | eopkg | .eopkg | Sí |
+------------+------------+------------------+-------------------+
| Void Linux | XBPS | .xbps | Sí |
+------------+------------+------------------+-------------------+
⚠️ Nota importante: Las tablas con formato de texto plano pueden no renderizarse bien en todos los temas de WordPress. Si usas un plugin de tablas, considera migrar este contenido a una tabla HTML real.
Conclusión
Cada distribución tiene su propia filosofía reflejada en su gestor de paquetes. Gentoo te da control absoluto sobre cada flag de compilación. Slackware confía en tu criterio como administrador. openSUSE y Solus buscan equilibrio entre facilidad de uso y potencia. Void Linux demuestra que se puede tener un sistema moderno sin systemd ni Debian.
Conocer estos gestores no solo te prepara para administrar distintas distribuciones, sino que profundiza tu comprensión de cómo funciona Linux por debajo. La flexibilidad de Linux radica precisamente en esta diversidad de herramientas.
En la Parte V (próximo artículo), exploraremos los formatos universales: Snap, Flatpak y AppImage. ¡No te lo pierdas!
¿Usas alguna de estas distribuciones? ¿Cuál es tu gestor de paquetes favorito? ¡Déjalo en los comentarios! 🐧
ITFrontech — Tu portal de tecnología y sistemas
📊 Infografía: Portage, Zypper, XBPS (Gentoo, openSUSE, Void)
Descarga nuestra infografía resumen con los comandos principales:
📥 Puedes descargar la infografía aquí
🔗 Infografía comparativa general — Descarga la comparativa de todos los gestores de paquetes.
