LINUX SYSTEMS BUILDER

Pablo G. Alba

Co-creador de CuerdOS Linux

Linux · Packaging · Infrastructure · Automation

Desarrollo sistemas e infraestructura Linux como parte de mi trabajo en CuerdOS. Mi experiencia abarca el desarrollo de la distribución, packaging, construcción de ISOs, repositorios, automatización y herramientas del sistema.

Escritorio de CuerdOS Linux con entorno Sway, mostrando Waybar superior y launcher Wofi con fondo geométrico abstracto en tonos verdes y oscuros
Captura de pantalla del entorno de escritorio CuerdOS Sway

Sobre mí

Trabajo principalmente con sistemas Linux, infraestructura y herramientas técnicas.

Soy co-creador de CuerdOS Linux, donde he trabajado en distintas áreas del desarrollo de la distribución: construcción del sistema, packaging, repositorios, imágenes, automatización y herramientas propias.

No vengo tanto del desarrollo tradicional de aplicaciones. Gran parte de lo que sé lo he aprendido investigando cómo funcionan las tecnologías, experimentando con ellas y resolviendo los problemas que aparecen por el camino.

Metodología de trabajo

Investigar → Experimentar → Romper → Solucionar → Construir

Ejemplos de mi proceso de trabajo

  • Aprender Void Linux prácticamente desde cero y utilizar ese conocimiento para construir la base de CuerdOS Void.
  • Trabajar con xbps-src y su sistema de templates para construir la infraestructura de packaging de CuerdOS.
  • Crear runitctl para ofrecer una interfaz más cómoda para gestionar los servicios de runit.

Soy co-creador y desarrollador de CuerdOS, una distribución GNU/Linux de origen español desarrollada de forma colaborativa. Mi trabajo dentro del proyecto se centra principalmente en la parte técnica del sistema y su infraestructura.

CuerdOS comenzó su desarrollo en 2023 y durante estos años ha evolucionado sobre una base Debian, sobre la que he trabajado en distintas partes de la distribución. Actualmente estamos desarrollando internamente una nueva generación basada en Void Linux.

Captura de pantalla completa del entorno de escritorio CuerdOS Sway mostrando Waybar con información del sistema, launcher Wofi con aplicaciones, y fondo geométrico abstracto característico de CuerdOS
Entorno de escritorio CuerdOS Sway con Waybar y Wofi

A lo largo del desarrollo del proyecto he trabajado en distintas áreas de la distribución, tanto durante su etapa basada en Debian como en la actual evolución hacia Void Linux.

Arquitectura y desarrollo

  • Desarrollo y evolución de CuerdOS sobre Debian
  • Desarrollo de la nueva generación basada en Void Linux
  • Migración arquitectónica de Debian a Void Linux

Ediciones de escritorio

  • Sway (Wayland): configuración completa, Waybar, Wofi, estilo visual y funcionalidad
  • Xfce: configuración, personalización y adaptación al sistema

Sistema de construcción

  • ISO Core de CuerdOS Void
  • Sistema de generación de ISOs basado en void-mklive y adaptado a nuestra infraestructura
  • Personalización de las imágenes, adaptándolas a cada edición
  • Construcción y personalización de imágenes durante la etapa Debian

Infraestructura de packaging y repositorios

  • Packaging pipeline (automatización XBPS)
  • CuerdOS Repo Manager (herramienta interna)
  • Infraestructura de repositorios
  • Detección de nuevas versiones de paquetes

Herramientas propias del sistema

  • Kron Installer: instalador gráfico (Python, PySide6, Bash)
  • runitctl: gestor de servicios runit con interfaz tipo systemctl
  • Compilación y adaptación del kernel: compilación del kernel para CuerdOS Void y adaptación del template de Void Linux, incluyendo la integración de los parches y las modificaciones necesarias para nuestra versión.
  • config-updates: sistema de actualizaciones de configuración mediante scripts postinstall

Otros componentes y automatizaciones

  • Scripts de configuración de escritorio
  • Adaptación de Calamares (versiones Debian)
  • Empaquetado DEB y gestión con reprepro
  • Configuración de .bashrc y personalización del shell
  • Múltiples scripts de automatización e infraestructura

Herramientas & Proyectos

runitctl

Gestor de servicios runit con interfaz tipo systemctl

Desarrollé runitctl para ofrecer una experiencia de gestión de servicios más cómoda y familiar para usuarios acostumbrados a herramientas como systemctl.

Permite listar, habilitar, deshabilitar, iniciar, detener y reiniciar servicios runit desde una interfaz inspirada en systemctl.

  • Bash
  • runit
  • Services
  • CLI

CuerdOS Repo Manager

Gestor de repositorios XBPS (herramienta interna)

Herramienta interna desarrollada para gestionar el repositorio de CuerdOS Void. Recibe los paquetes generados por el pipeline, estructura el repositorio, reconstruye sus índices y facilita su validación y promoción.

No es software público actualmente.

  • Bash
  • XBPS
  • Repositories
  • Automation

Áreas técnicas

Systems

  • Linux
  • Void Linux
  • Debian
  • runit
  • systemd
  • Dracut
  • Initramfs
  • Kernel / Modules

Packaging

  • XBPS
  • xbps-src
  • Templates
  • DEB Packaging
  • reprepro
  • void-mklive
  • SquashFS

Languages

  • Bash
  • Python

Infrastructure

  • SSH
  • Nginx
  • Apache
  • Let's Encrypt
  • Docker
  • VPS
  • Cron / Jobs

Tools

  • Git / GitHub
  • VirtualBox
  • QEMU / KVM
  • VMware

Desktop Env

  • Sway (Wayland)
  • Xfce
  • Waybar
  • Wofi

Networking

  • DHCP
  • DNS
  • Firewall
  • Network / CLI
  • VPN

Contacto

¿Interesado en colaborar o hablar sobre sistemas Linux?