CachyOS: Guía Completa de Instalación en Dual Boot con Windows — Configuración, Errores y Software para Desarrolladores

- Andrés Cruz -

CachyOS: Guía Completa de Instalación en Dual Boot con Windows — Configuración, Errores y Software para Desarrolladores

Este artículo documenta  mi experiencia instalando y configurando CachyOS en un entorno de arranque dual (Dual Boot) con Windows. Aquí encontrarás una guía de instalación paso a paso, los problemas reales que encontré en el proceso, cómo los resolví, los conceptos y comandos fundamentales que todo usuario debería conocer, y una selección de software recomendado para desarrolladores.

Si vienes del mundo de Windows o de distribuciones más amigables como Ubuntu, esta guía está diseñada para hacerte el camino mucho más corto y sobre todo si eres un desarrollador como yo y/o que le gusta subir contenido a redes sociales.

Conceptos Fundamentales: El Glosario del Principiante

Antes de entrar en materia, es importante que conozcas el significado de los términos que aparecerán a lo largo de este artículo. Entenderlos te ahorrará muchas búsquedas en Google.

  • CachyOS: Una distribución basada en Arch Linux altamente optimizada para rendimiento. Su diferencial principal son los kernels personalizados y las compilaciones de paquetes optimizadas para arquitecturas de procesador específicas (x86-64-v3, v4), lo que se traduce en un sistema notablemente más rápido que una instalación estándar de Arch.
  • Dual Boot (Arranque Dual): La coexistencia de dos sistemas operativos —en nuestro caso, Windows y CachyOS— en el mismo equipo. Al encender la computadora, un gestor de arranque (bootloader) presenta un menú para elegir con qué sistema deseas iniciar.
  • Bootloader (Gestor de Arranque): El programa que se ejecuta antes del sistema operativo y que controla cuál de los sistemas instalados cargará el hardware. Los más populares son GRUB y systemd-boot.
  • UEFI / BIOS: El firmware de bajo nivel de la placa base que inicializa el hardware antes del sistema operativo. La UEFI es la versión moderna y más capaz de la antigua BIOS.
  • Partición EFI (ESP): Una pequeña partición en formato FAT32 que almacena los archivos del gestor de arranque. En un Dual Boot, se comparte entre los sistemas operativos.
  • Btrfs: Un sistema de archivos moderno para Linux con soporte nativo de compresión transparente, instantáneas (snapshots) y suma de verificación de datos. Es el sistema de archivos predeterminado en CachyOS y la opción recomendada.
  • Distrobox: Una herramienta que permite crear contenedores basados en cualquier distribución Linux dentro de tu sistema actual, de forma transparente. Los contenedores comparten el servidor gráfico, las carpetas del usuario y los recursos de hardware (incluyendo la GPU), lo que los hace ideales para correr software diseñado para otras distribuciones, como DaVinci Resolve.
  • Polkit (PolicyKit): Componente del sistema encargado de gestionar los privilegios globales en sistemas tipo Unix. Es quien controla, por ejemplo, si un usuario necesita ingresar la contraseña para montar un disco interno.
  • AUR (Arch User Repository): El repositorio comunitario de Arch Linux. Contiene miles de paquetes no oficiales —como Google Chrome, Android Studio o DaVinci Resolve— enviados y mantenidos por usuarios de la comunidad.
  • Rolling Release: Un modelo de distribución donde el software se actualiza de forma continua sin versiones fijas de sistema operativo. En lugar de hacer un "upgrade" de Ubuntu 22 a 24, en Arch/CachyOS simplemente actualizas cada vez que quieras con pacman -Syu.

Ocultar el Menú de Arranque de GRUB

En mi caso, dejé Windows POR SI LO NECESITO, ya que, al menos en mi caso, puedo hacer TODO lo que hacía en Windows en CachyOS, por lo tanto, si en algún punto te aburres y NO quieres usar más el GRUB, puedes desactivarlo totalmente seguro de la siguiente forma:

Para ocultar el menú de GRUB, simplemente ajusta las siguientes opciones como se indica en la Wiki:

/etc/default/grub
GRUB_TIMEOUT='0'
GRUB_TIMEOUT_STYLE=hidden

Presiona ESC para acceder a la terminal de GRUB. Desde aquí, ejecuta normal o exit para volver al menú de arranque familiar de GRUB.

Y claro está, que lo que estas haciendo es ocultarlo y en cualquier momento puedes restablecerlo, de igual forma, puedes entrar a Windows desde la BIOS, seleccionando el disco de Windows para bootear.

Parte 1: Preparación del Entorno — Antes de Instalar

Una instalación exitosa de Linux en Dual Boot depende casi en su totalidad de los pasos previos. Esta sección cubre todo lo que debes hacer antes de siquiera conectar el USB.

Paso 1: Crear el Medio de Instalación (USB Booteable con Rufus)

Al preparar el USB de instalación para CachyOS con la herramienta Rufus, existe una configuración crítica que, si se omite, provocará que la computadora se congele en una pantalla negra o que la BIOS no reconozca el dispositivo.

Una vez que cargues el archivo ISO de CachyOS en Rufus y presiones "Empezar", la aplicación desplegará una ventana emergente preguntando el método de escritura. Aquí es donde debes seleccionar obligatoriamente el Modo DD (Disk/Drive Image):

  [ ] Escribir en modo Imagen ISO (Recomendado)
  [x] Escribir en modo Imagen DD

¿Por qué es obligatorio el Modo DD?

Las distribuciones basadas en Arch Linux utilizan un sistema de archivos híbrido y un esquema de particiones muy específico en sus instaladores. Si se usa el modo ISO tradicional, Rufus intentará descomprimir e interpretar los archivos de arranque para adaptarlos a su propia estructura, corrompiendo las rutas nativas que necesita el instalador para funcionar.

El Modo DD desactiva cualquier alteración por parte de Rufus y la convierte en un clonador puro: realiza una copia bit a bit del ISO directamente sobre la memoria USB, garantizando:

  • Integridad absoluta de los datos: Sin riesgo de alteración en las rutas críticas del sistema de arranque.
  • Compatibilidad UEFI real: La partición de arranque diseñada por el equipo de CachyOS se traslada intacta, asegurando que la placa base la detecte correctamente.
  • Arranque garantizado: Se eliminan por completo los bucles de carga incorrectos y los errores de lectura en sistemas modernos.

Configuración recomendada en Rufus

  • Dispositivo: Selecciona la unidad USB de destino (mínimo 8 GB de capacidad).
  • Elección de arranque: Apunta al archivo ISO oficial de CachyOS.
  • Esquema de partición: Selecciona GPT — requisito obligatorio para placas base modernas y entornos Dual Boot.
  • Sistema de destino: Establece la opción en UEFI (no CSM).
  • Sistema de archivos: Puedes dejarlo en FAT32; el modo DD restructurará el formato internamente.

Alternativas a Rufus: Si el dispositivo USB presenta inconsistencias o si estás en Mac/Linux, puedes utilizar BalenaEtcher o Ventoy. Ambas herramientas operan bajo la lógica de copia directa y eliminan las incompatibilidades operativas.

Rufus, instalacion para CachyOS

Paso 2: Preparación desde Windows — Desactivar el Inicio Rápido (Fast Startup)

Este es el paso que más usuarios omiten y que más problemas causa a largo plazo en entornos Dual Boot. Cuando la característica de Inicio Rápido está habilitada, Windows no realiza un apagado completo del hardware. En su lugar, congela el estado del núcleo del sistema y bloquea los volúmenes de almacenamiento en un archivo de hibernación para acelerar el siguiente encendido.

Este estado de hibernación bloquea los discos bajo un marcador de uso (conocido como "dirty bit"). Cuando Linux intente acceder o escribir en los discos durante la instalación o en futuros arranques, bloqueará el acceso en modo de solo lectura o impedirá completamente el montaje de las unidades. Esto puede derivar en pérdida de datos y en Kernel Panics al cambiar de sistema.

Cómo desactivar el Inicio Rápido en Windows

  1. Accede al menú de inicio, busca Panel de Control y ábrelo.
  2. Navega a Hardware y sonidoOpciones de energía.
  3. En el panel lateral izquierdo, haz clic en "Elegir el comportamiento de los botones de inicio/apagado".
  4. Los parámetros avanzados están protegidos. Haz clic en el enlace con el escudo de seguridad: "Cambiar la configuración actualmente no disponible".
  5. En la sección Configuración de apagado, desmarca la casilla "Activar inicio rápido (recomendado)".
  6. Haz clic en Guardar cambios y apaga el sistema por completo (no reinicies, apaga).

Paso 3: Configuración de la BIOS/UEFI

Antes de arrancar desde el USB, debes configurar algunos parámetros en el firmware de la placa base. Accede a la BIOS al encender el equipo presionando la tecla correspondiente (en placas ASUS suele ser Supr o F2; en MSI, Supr; en Gigabyte, F2 o Supr).

  • Desactivar Secure Boot: Algunos kernels personalizados de CachyOS no están firmados digitalmente bajo el estándar de Microsoft, por lo que el Arranque Seguro los rechazará. Busca la opción en la pestaña "Boot" o "Security" y cámbiala a Disabled.
  • Desactivar Fast Boot en la BIOS: Además de desactivarlo en Windows, también debes hacerlo a nivel de firmware. Busca la opción Fast Boot en la pestaña de arranque y ponla en Disabled. Esto garantiza que el hardware se inicialice limpiamente en cada arranque, evitando conflictos con el kernel de Linux.
  • Asegurar el modo AHCI: Verifica que el modo de controladora de almacenamiento esté configurado en AHCI y no en modo RAID o IDE.
  • Configurar el orden de arranque: Establece el USB como primera opción de arranque para iniciar el instalador.

Paso 4: Disco aparte

La forma recomendada para que NO te compliques en la instalación, es tener un disco APARTE en el cual tener disponible para instalar CachyOS o tu distro Linux, la misma, DEBE estar limpia o al menos tener presente de que se van a perder esos datos así que, debes de hacer una copia de seguridad de los archivos.

Paso 4.5: Liberar Espacio en Disco desde Windows

Para instalar CachyOS junto a Windows, necesitas espacio no asignado en tu disco. La forma más segura de crearlo es usando la herramienta nativa de Windows:

  1. Haz clic derecho sobre el icono de Windows → Administración de discos.
  2. Haz clic derecho sobre tu partición principal (generalmente C:) y selecciona "Reducir volumen...".
  3. Ingresa la cantidad de MB que deseas liberar. Se recomienda un mínimo de 50.000 MB (50 GB), siendo 100 GB o más lo ideal para un sistema de desarrollo.
  4. Confirma la operación. El espacio liberado aparecerá como "No asignado" en color negro.

Puedes saltar este paso si ya cumpliste con el Paso 4.

Parte 2: El Proceso de Instalación con Calamares

Una vez que hayas preparado todo en la sección anterior, conecta el USB y enciende el equipo. El sistema arrancará directamente en el escritorio en vivo de CachyOS. Desde aquí, lanza el asistente de instalación haciendo clic en CachyOS Hello"Ejecutar instalador".

Selección del Gestor de Arranque (Bootloader)

Una de las primeras decisiones que el asistente te pedirá es elegir el gestor de arranque. Tienes dos opciones principales:

  • GRUB (Grand Unified Bootloader): Es el estándar clásico de la industria. Su gran ventaja para Dual Boot es la herramienta os-prober, que detecta automáticamente instalaciones de Windows en otros volúmenes y genera un menú de selección limpio cada vez que enciendes el equipo. Es la opción recomendada para principiantes y para configuraciones con múltiples sistemas operativos.
  • systemd-boot: La alternativa moderna y minimalista. Arranca el sistema unos segundos más rápido al carecer de scripts complejos, pero requiere una configuración manual más detallada para entornos Dual Boot. Recomendado para usuarios avanzados con instalaciones UEFI puras.
Opciones duales para Window y LInux

Recomendación: Si es tu primera vez instalando Linux junto a Windows, mantén la selección en GRUB. Te ahorrará muchos dolores de cabeza.

Particionado Manual: La Tabla de Particiones Recomendada

En la sección de particionado del instalador Calamares, selecciona la opción de Particionado Manual para tener control total. El esquema recomendado es el siguiente:

Punto de MontajeSistema de ArchivosTamaño RecomendadoIndicadores (Flags)Notas
/boot/efiFAT32Usar la partición EFI existente de Windows (¡NO formatear!)boot, espSi instalas en un disco completamente nuevo, crea una de 512 MB a 1 GB.
/ (Raíz)Btrfs (recomendado) o XFSMínimo 50 GB. Usar todo el espacio no asignado disponible.rootBtrfs es el predeterminado de CachyOS y ofrece compresión transparente y snapshots.

Advertencia crítica sobre la partición EFI: Si tu computadora ya tiene Windows instalado, existirá una partición EFI (generalmente de 100 MB a 512 MB). Debes seleccionarla como punto de montaje /boot/efi sin marcar la casilla de formateo. Si la formateas, borrarás el gestor de arranque de Windows y necesitarás repararlo manualmente.

Estrategia de Almacenamiento: Disco Principal y Disco Secundario

Si tu equipo cuenta con múltiples unidades de almacenamiento, la estrategia más eficiente es asignar funciones diferenciadas para maximizar el rendimiento:

Unidad de AlmacenamientoFunción Recomendada
SSD NVMe principal (ej. 512 GB)Sistema base de CachyOS: binarios del sistema, librerías del núcleo, aplicaciones críticas. El acceso a alta velocidad del NVMe garantiza arranques ultrarrápidos y aplicaciones fluidas.
SSD/HDD secundario (ej. 2 TB)Almacenamiento masivo: proyectos de desarrollo, repositorios Git locales, modelos de Inteligencia Artificial (Ollama), archivos multimedia para edición, library de videojuegos de Steam.

Nota de seguridad importante: No configures la unidad secundaria durante el asistente de instalación. Completa primero la instalación base en tu disco primario. Una vez que tengas el escritorio de CachyOS funcionando, formatea y configura el disco secundario desde el entorno gráfico o la terminal de forma controlada y segura.

Adjunto algunas imágenes del proceso de instalación:

Cachy desde USB
Cargando CachyOS
Instalar CachyOS bot[on
seleccionar region
seleccionar_teclado
Seleccionar disco para instalar
Seleccionar escritorio
Paquetes adicionales
Configurar Clave usuario
Instalacion terminada

Una vez instalado, puedes consultar TODA la Wiki de CachyOS para entender el sistema;  entre los más relevante para este paso, que puedes hacer LUEGO de instalar:

https://wiki.cachyos.org/es/configuration/post_install_setup/

Parte 3: Problemas Durante la Instalación y sus Soluciones

La instalación de Linux rara vez sale perfecta a la primera, especialmente en hardware moderno. Aquí están los problemas que yo encontré y cómo los resolví.

Problema 1: Error Boost.Python en Calamares (SIGPIPE: 13)

Durante la instalación con el asistente gráfico Calamares, es posible que aparezca el error Error Boost.Python en el proceso "mount" (SIGPIPE: 13). Este error no indica una avería física en tu disco NVMe.

El problema ocurre cuando el instalador intenta particionar, formatear o desmontar la unidad de destino, pero el sistema operativo en vivo del USB mantiene la partición retenida en segundo plano por algún proceso fantasma, generando un conflicto de bloqueo de hardware (conocido como "drive busy").

Solución: Limpieza manual del disco desde la terminal

  1. Cierra la ventana de error y cierra por completo el instalador Calamares.
  2. Abre una terminal (Konsole) en el entorno en vivo.
  3. Fuerza el desmontaje de cualquier volumen bloqueado y limpia las tablas de partición del disco:
sudo umount -l /dev/nvme1n1* 2>/dev/null
sudo sgdisk --zap-all /dev/nvme1n1

Nota: El flag --zap-all destruye las estructuras GPT/MBR corruptas o bloqueadas, dejando la unidad en un estado completamente virgen. Reemplaza nvme1n1 por el identificador correcto de tu disco (puedes verificarlo con el comando lsblk).

  1. Inicia nuevamente el asistente desde CachyOS Hello"Ejecutar instalador".
  2. Asegúrate de tener conexión activa a internet.
  3. Procede con la configuración previa (GRUB, borrado del disco, formato Btrfs). Al haber liberado los montajes fantasmas, el proceso de instalación se completará sin interrupciones.
Disco_montado

Problema 2: Kernel Panic al Cambiar de Windows a Linux (Reinicio en Caliente)

Un síntoma crítico en entornos Dual Boot con placas base modernas es el siguiente: si realizas un "Reiniciar" desde Windows para entrar a Linux, obtienes un Kernel Panic inmediato (incapacidad de leer el NVMe) o pierdes las salidas de audio digital (DisplayPort/HDMI). Sin embargo, si apagas por completo la máquina y la enciendes de cero, ambos sistemas funcionan con absoluta normalidad.

Bloquero al reiniciar desde windows

Por qué ocurre

Este comportamiento es consecuencia directa de la función Fast Startup de Windows. Cuando ordenas un reinicio con esta función activa, Windows no cierra el sistema genuinamente: realiza un volcado del estado del núcleo y los controladores de hardware hacia una hibernación híbrida, manteniendo las controladoras de audio y las interfaces NVMe bloqueadas bajo un estado de energía exclusivo —un verdadero "secuestro de hardware".

Al tomar el control de inmediato, el kernel de Linux no puede inicializar esos componentes porque no responden a sus solicitudes de inicio limpio, desencadenando el colapso del sistema.

Solución definitiva: Desactivación en Windows y en la BIOS

La solución es doble. Primero, desactiva el Inicio Rápido en Windows siguiendo los pasos descritos en la Parte 1, Paso 2 de esta guía. Segundo, desactívalo también en el firmware:

  1. Reinicia y accede a tu BIOS (tecla Supr o F2 en placas ASUS).
  2. Dirígete a la pestaña avanzada de Boot (Arranque).
  3. Localiza el parámetro Fast Boot y ponlo en Disabled.
  4. Guarda los cambios y sal.

Con esta doble configuración, Windows liberará los buses de datos y de energía de forma estricta en cada ciclo, permitiendo que Linux reconozca el hardware sin conflictos.

Problema 3: Fallos de Autenticación tras la Instalación (Reset de Contraseña)

Si tras completar la instalación el sistema rechaza tu contraseña —incluso al intentar acceder desde una consola de texto pura (TTY) con Ctrl + Alt + F3—, el sistema presenta una inconsistencia de credenciales. Esto suele ser causado por una asignación incorrecta del teclado durante la instalación (por ejemplo, si tu teclado es en español y el instalador asumió inglés, la contraseña que tecleaste tiene caracteres distintos).

Este escenario no requiere un formateo completo. Puedes reescribir la contraseña explotando las utilidades de recuperación desde la Live ISO original mediante un entorno Chroot (cambio de raíz).

Ventana de autenticacion por terminal

En la cual, puedes ver que si tienes problemas de autenticación más de 3 veces, te bloquean por 8 minutos.

Protocolo de recuperación paso a paso

  1. Arranca tu computadora desde el USB de instalación de CachyOS para acceder al escritorio en vivo.
  2. Abre una terminal e identifica tu partición raíz:
lsblk

Busca la unidad formateada en btrfs (identificable por su tamaño). Para este ejemplo, asumiremos que es /dev/nvme1n1p2.

  1. Monta el subvolumen raíz (@) del sistema de archivos en el directorio temporal:
sudo mount -o subvol=@ /dev/nvme1n1p2 /mnt
  1. Realiza el cambio de raíz (chroot). Este comando transfiere la ejecución de la terminal al interior del sistema instalado en tu SSD, usando sus propios binarios y variables de entorno:
sudo arch-chroot /mnt
  1. Reasigna una nueva contraseña para tu usuario (reemplaza tunombredeusuario por el tuyo):
passwd tunombredeusuario

Consejo: Introduce la nueva contraseña con calma. En consolas puras, usa la fila numérica superior del teclado en lugar del pad numérico para evitar variaciones de mapeo.

  1. Una vez que la terminal confirme "password updated successfully", cierra el chroot, desmonta y reinicia:
exit
sudo umount /mnt
sudo reboot

Otro problema es que, tenía un monitor doble conectado y en el mismo se cargó el escritorio con las opciones, desde allí, puedes seleccionar el wifi para el Internet o colocar un cable de red:

No hay internet

Problema 4: GRUB dañado

Por alguna razón, el GRUB nunca funciono y debería de repararlo para poder ingresar a Windows desde el, pero, QUE NO CUNDA EL PáNICO, también, puedes ingresar desde la BIOS, simplemente, booteas desde elÑ

Bootear a windows

Problema 5: Error de SDDM (el gestor de inicio de sesión de KDE Plasma) con NVIDEA

Hay veces que inicio sesión y la pantalla aparece en negra, no aparece la imagen de fondo y las opciones no funcionan, ni iniciar sesión ni reiniciar, y me toca reiniciar de manera manual:

nó

la interfaz del login se congela a nivel gráfico antes de cargar el fondo de pantalla y los servicios del sistema, dejando los botones totalmente "muertos" porque el driver de vídeo no se inicializó a tiempo durante el arranque.

Como estás en CachyOS, podemos solucionar esto de raíz forzando la carga temprana de los controladores de video.

Cómo revivir la pantalla ahora mismo (Sin apagar a la fuerza)

Si estás atrapado en esa pantalla congelada y no quieres apagar la PC manteniendo presionado el botón físico:

  1. Presiona el atajo Ctrl + Alt + F3 (esto te sacará de la interfaz congelada y te abrirá una terminal pura en modo texto).
  2. Pon tu usuario y contraseña.
  3. Reinicia el entorno gráfico de golpe ejecutando:
sudo systemctl restart sddm

Parte 4: Gestión de Software — Pacman y Paru

Para entender cómo instalar y gestionar software en CachyOS, necesitas comprender que el ecosistema se divide en dos mundos: el oficial y el comunitario. Cada uno tiene su herramienta.

El Gestor Oficial: Pacman

pacman es el gestor de paquetes nativo del sistema, programado en C para mantener bases de datos ligeras y operaciones veloces. Es el equivalente de apt en Ubuntu/Debian, pero considerablemente más rápido.

  • De dónde saca los programas: De los repositorios oficiales y estables de Arch Linux, complementados por los repositorios optimizados propios de CachyOS.
  • Qué descarga: Paquetes binarios ya compilados y listos para usar (extensión .pkg.tar.zst). Se instalan en segundos.
  • Seguridad: Absoluta. Todo el software ha sido verificado, empaquetado y firmado digitalmente por los desarrolladores oficiales de la distribución.
  • Comando típico: sudo pacman -S steam

El Asistente Comunitario: Paru

paru funciona como un wrapper (envoltorio) avanzado diseñado para interactuar con el AUR (Arch User Repository), el repositorio masivo alimentado por la comunidad que aloja software como Google Chrome, Android Studio o DaVinci Resolve.

  • De dónde saca los programas: Del AUR, un repositorio abierto alimentado por la comunidad. Aquí vive todo el software que los mantenedores oficiales no pueden distribuir directamente.
  • Qué descarga: No descarga el programa terminado, sino un script de construcción llamado PKGBUILD. La herramienta lee esta "receta", descarga el código fuente o binarios desde la web oficial del creador, los compila en tu máquina y finalmente llama a pacman para la instalación.
  • Interoperabilidad: paru es un reemplazo total de pacman. Puede buscar e instalar tanto paquetes del AUR como paquetes oficiales.
  • Seguridad: Comunitaria. Al ser un repositorio abierto, siempre te mostrará el código del PKGBUILD antes de ejecutar nada, para que puedas auditarlo.
  • Comando típico: paru -S android-studio (No usa sudo al inicio; lo solicita al final por seguridad).

La Analogía del Restaurante

Imagina que tu sistema operativo es un restaurante:

  • pacman es el Chef Principal: Gestiona la cocina y sirve platos terminados directamente desde el menú oficial. Todo está certificado y garantizado.
  • paru es el Asistente de Cocina: Si pides un plato exótico que no figura en el menú, él sale al mercado de la comunidad, consigue la receta, adquiere los ingredientes, los procesa y se los entrega al Chef Principal (pacman) para que este les dé el visto bueno final y los sirva en el sistema.

Tabla Comparativa Rápida

Característicapacmanparu
RepositorioOficiales (estables y optimizados)AUR (comunidad y terceros) + oficiales
Tipo de archivoBinario precompilado (instalación instantánea)Scripts de construcción PKGBUILD (requiere compilación local)
Requiere sudo al inicioNo — lo solicita al final para instalar
¿Puede reemplazar al otro?No, no interactúa con el AURSí, actúa como wrapper y busca también en repositorios oficiales
VelocidadMuy rápida (solo descarga y descomprime)Más lenta (descarga + compilación local)

Anatomía de los Comandos de Pacman: Flags y Modificadores

La sintaxis de pacman se organiza de forma jerárquica: las letras en MAYÚSCULAS determinan la operación principal, y las letras en minúsculas son modificadores de esa acción.

El Modificador de Sincronización (-S)

La bandera -S (Sync) indica que la operación consultará los repositorios remotos. Sus combinaciones más importantes son:

  • sudo pacman -Sy (Sync + Refresh): Sincroniza las bases de datos locales descargando las listas de paquetes más recientes. Equivale a apt update.
  • sudo pacman -Su (Sync + Upgrade): Actualiza todos los paquetes instalados que estén desactualizados. Equivale a apt upgrade.
  • sudo pacman -Syu (La combinación estándar): Sincroniza los repositorios remotos Y actualiza todo el sistema en un solo comando atómico. Este es el comando que debes ejecutar periódicamente para mantener tu sistema al día.
sudo pacman -Syu

Que puedes ejecutar al menos una vez a la semana para tener el sistema al día, este comando actualiza dependencias del SO y también el software que hayas instalado.

Actualizar el sistema y paquetes

En tu barra de navegación, verás que hay una herramienta llamada Cachy-Update, que puedes emplear en vez del comando anterior, tiene ventajas como que ya actualiza del repositorio de  AUR; ya NO es necesario actualizar paquetes instalados con estas herramientas como la de Flutter, o VSC (como veremos más adelante) mediante Flutter upgrade, por el contrario, si lo actualizas manualmente, puedes obtener problemas de permisos al ser instalado Flutter mediante comando de sudo y que a la final, la actualización e instalación deberíamos de hacerlo mediante pacman.

Desde la Wiki de CachyOS, recomiendan usar Octopi:

  • Inicia Octopi desde el menú de aplicaciones.
  • En la ventana principal, haz clic en el botón Check updates (Comprobar actualizaciones) (arriba a la izquierda), y ahora al lado en System upgrade. (Actualización del sistema).
  • Octopi buscará las actualizaciones.

404 en Arch/CachyOS

Muchas veces al momento de instalar un nuevo software (por ejemplo udo pacman -S ollama-cuda), obtenemos un 404:

 ollama-cuda-0.31.2-1.1-x86_64_v3                    773,2 MiB  15,5 MiB/s 00:50 [----------------------------------------------] 100%

error: no se pudo obtener el archivo «ollama-cuda-0.31.2-1.1-x86_64_v3.pkg.tar.zst» desde cachyos.doridian.net: The requested URL retu

rned error: 404

error: no se pudo obtener el archivo «ollama-cuda-0.31.2-1.1-x86_64_v3.pkg.tar.zst.sig» desde mirror.krfoss.org: The requested URL ret

urned error: 404

advertencia: no se pudieron recibir algunos archivos

error: no se pudo realizar la operación (no se pudieron descargar algunos archivos)

Ocurrieron errores, por lo que no se actualizarán los paquetes 

Para ello, debemos de actualizar la Base de Datos:

sudo pacman -Syyu
  • -Syy: Fuerza la descarga de las bases de datos de paquetes desde cero, asegurando que tu sistema conozca las URLs y versiones exactas que existen ahora mismo en los servidores de CachyOS.
  • -u: Actualiza tu sistema para evitar problemas de dependencias rotas.

Otras Operaciones Principales

  • -R (Remove): Desinstala un paquete del sistema.

    sudo pacman -R discord          # Elimina el paquete
    sudo pacman -Rns discord        # Elimina el paquete + dependencias huérfanas + archivos de configuración
  • -Q (Query): Realiza consultas sobre paquetes instalados localmente.

    pacman -Q                       # Lista todos los paquetes instalados
    pacman -Qs firefox              # Busca "firefox" entre los paquetes instalados
    pacman -Qi firefox              # Muestra información detallada de un paquete instalado
  • -F (Files): Busca en repositorios remotos a qué paquete pertenece un archivo o librería específica. Extremadamente útil para resolver errores de tipo libXYZ.so.1: cannot open shared object file.

    sudo pacman -Fy                 # Actualiza la base de datos de archivos
    pacman -F libGLU.so.1           # Descubre qué paquete contiene esa librería
  • -U (Upgrade desde archivo): Instala un paquete directamente desde un archivo .pkg.tar.zst local.

    sudo pacman -U ./paquete.pkg.tar.zst

Tabla de Comandos Frecuentes: Ubuntu vs. CachyOS

AcciónUbuntu (apt)CachyOS — Oficial (pacman)CachyOS — Comunidad (paru)
Instalar un paquetesudo apt install <pkg>sudo pacman -S <pkg>paru -S <pkg>
Actualizar el sistemasudo apt update && sudo apt upgradesudo pacman -Syuparu -Syu
Buscar un paqueteapt search <pkg>pacman -Ss <pkg>paru -Ss <pkg>
Eliminar un paquetesudo apt remove <pkg>sudo pacman -R <pkg>paru -R <pkg>
Eliminar + dependencias huérfanassudo apt autoremovesudo pacman -Rns <pkg>paru -Rns <pkg>
Listar paquetes instaladosapt list --installedpacman -Qparu -Q
Limpiar caché de descargassudo apt cleansudo pacman -Scparu -Sc

Nota de Diagnóstico: Si el sistema devuelve unknown command: paru, el binario no está instalado. En instalaciones limpias de CachyOS puede que ya venga incluido, pero si no, instálalo con: sudo pacman -S paru. Nunca ejecutes sudo paru —el asistente rechazará funcionar como root por diseño de seguridad.

Parte 5: Automontar particiones

En las distribuciones modernas de Linux, como CachyOS o Arch Linux, el montaje manual de discos a través de la interfaz gráfica de por ejemplo KDE suele asignar rutas temporales y variables dentro de /run/media/, y una molestia al iniciar la sesión que te pide la contraseña para montar los discos.

Para flujos de trabajo profesionales de desarrollo de software o producción multimedia en donde estos discos son fundamentales para que software como OBS, Davinci, Gimp funcionen con los archivos almacenados en estos discos, lo ideal es configurar un automontaje permanente y fijo en el arranque del sistema modificando el archivo de configuración nativo /etc/fstab.

1. Identificar las particiones

Antes de modificar cualquier parámetro, necesitamos conocer con precisión milimétrica los identificadores únicos globales (UUID) y los formatos de nuestros discos. Para ello, utilizamos el siguiente comando en la terminal:

lsblk -f

Explicación del comando:

  • lsblk: Significa List Block Devices. Se encarga de listar todos los dispositivos de almacenamiento disponibles en el hardware (SSD, NVMe, HDD).
  • -f: Es la bandera de Filesystem. Fuerza al comando a mostrar información detallada sobre los sistemas de archivos, los nombres de las etiquetas (LABEL), los puntos de montaje actuales y, lo más importante, el código UUID. Usar el UUID garantiza que la configuración no se rompa si cambias el orden de los cables físicos en tu placa base.

2. Crear los puntos de montaje

El sistema necesita una carpeta física vacía donde "fusionar" los archivos del disco. Debemos preparar este directorio antes de configurar el montaje automático:

sudo mkdir -p /mnt/Almacen

Explicación del comando y su parámetro:

  • sudo: Ejecuta la instrucción con privilegios de superusuario, necesario para modificar directorios del sistema como /mnt/.
  • mkdir: Comando estándar para crear directorios (Make Directory).
  • -p: Es el parámetro crucial de Parents (padres). Cumple una doble función de seguridad: primero, si la ruta intermedia no existe (por ejemplo, si /mnt no estuviera creada), la crea automáticamente en el camino sin fallar. Segundo, si la carpeta final ya existe, el comando simplemente no hace nada y evita lanzar un error molesto en la terminal.

3. La instrucción de montaje en /etc/fstab

Una vez creada la carpeta de destino en el sistema (por ejemplo, en /mnt/Almacen), se añade una línea de configuración al final del archivo /etc/fstab. A continuación, se presenta una instrucción estándar optimizada para rendimiento y seguridad:

UUID=4d294d69-a027-474b-b908-314443e6290c  /mnt/Almacen  btrfs  defaults,noatime,compress=zstd:1,nofail  0  0

Puedes usar nano:

 sudo nano /etc/fstab

Copias y pegas los cambios Control+O para guardar y Control+X para salir

Luego, ejecuta el siguiente comando para ver que todo esta OK y verifique la integridad de los discos que vamos a montar automáticamente al iniciar el equipo:

sudo findmnt --verify

Como ayuda adicional, usa un chat de IA como Gemini, pásale la salida del comando lsblk -f para que te componga el automontaje, con esa salida, usa otra IA como ChatGTP o Perplexity para verificar que los datos estan OK y puedas reiniciar con total seguridad; los pasos detallados, en la wiki:

https://wiki.cachyos.org/configuration/automount_with_fstab/

4. Explicación detallada de la instrucción

El archivo /etc/fstab procesa la configuración dividiéndola estrictamente en 6 columnas separadas por espacios o tabulaciones. Cada componente cumple una función crucial:

  • Columna 1 (Identificador): UUID=4d294d69-a027-474b-b908-314443e6290c. Especifica exactamente qué partición física se va a inicializar, utilizando su identificador único.
  • Columna 2 (Punto de montaje): /mnt/Almacen. Determina la ruta absoluta del directorio del sistema donde se "fusionarán" y visualizarán los archivos del disco.
  • Columna 3 (Tipo de sistema de archivos): btrfs. Le indica al Kernel de Linux qué controlador o driver nativo debe utilizar para interactuar con la estructura del disco (puede cambiarse por ext4, ntfs3, etc.).
  • Columna 4 (Opciones de montaje): Es un bloque de parámetros separados por comas sin espacios que definen el comportamiento de la partición:
    • defaults: Aplica un conjunto de configuraciones estándar y seguras del sistema operativo, como permitir la lectura, la escritura y la ejecución de binarios.
    • noatime: Desactiva la escritura de metadatos de acceso cada vez que abres un archivo para leerlo. Esto reduce drásticamente las escrituras innecesarias, optimizando la velocidad y prolongando la vida útil de los SSD.
    • compress=zstd:1: Activa la compresión transparente en segundo plano utilizando el algoritmo ZSTD en nivel 1. Reduce el espacio físico ocupado y acelera las tasas de lectura al procesar menos bytes del almacenamiento masivo.
    • nofail: Es el parámetro de seguridad más importante. Si el disco llega a desconectarse, falla físicamente o se daña, esta etiqueta obliga al sistema a ignorar el error y continuar con el arranque normal de tu entorno de escritorio, evitando pantallas de bloqueo en modo emergencia.
  • Columna 5 (Dump): 0. Indica a la herramienta de respaldo heredada dump si debe realizar copias de seguridad de esta partición. Al establecerse en cero, se desactiva por completo.
  • Columna 6 (Pass): 0. Determina el orden en que la utilidad fsck inspeccionará el dispositivo en busca de errores durante el arranque. Al configurarse en cero para discos auxiliares, se omite el escaneo en el encendido para mantener un booteo inmediato y veloz.

Parte 6: Guía de Software Esencial para Desarrolladores

Una de las mayores ventajas de CachyOS es el acceso inmediato a casi cualquier herramienta de desarrollo a través de pacman y el AUR. A continuación, una selección de software esencial categorizado por área de trabajo.

Herramientas de Desarrollo General y Juegos

  • Visual Studio Code: El editor de código más popular del mundo. Disponible directamente desde los repositorios de CachyOS con soporte completo de extensiones.

    sudo pacman -S code

    O instala la versión binaria oficial de Microsoft (incluye telemetría y marketplace completo):

    paru -S visual-studio-code-bin
  • Git: Control de versiones, indispensable para cualquier proyecto de desarrollo moderno.

    sudo pacman -S git

    Configura tu identidad global tras la instalación:

    git config --global user.name "Tu Nombre"
    git config --global user.email "tu@email.com"
  • Base de herramientas de compilación: El grupo base-devel incluye gcc, make y otras utilidades esenciales requeridas para compilar software desde el código fuente (y requeridas por paru para el AUR).

    sudo pacman -S base-devel
  • Neovim: El editor de texto moderno y extensible para la terminal, con un ecosistema de plugins enorme. Alternativa potente para quienes prefieren el flujo de trabajo basado en teclado.

    sudo pacman -S neovim
  • JetBrains Toolbox: Instalador y gestor de las IDEs de JetBrains (IntelliJ, PHPStorm, WebStorm, DataGrip, etc.). La forma más ordenada de mantener múltiples IDEs actualizadas.

    paru -S jetbrains-toolbox

    Obsidian:

    sudo pacman -S obsidian

    Filezilla:

    sudo pacman -S filezilla

    OBS:

    sudo pacman -S obs-studio

    Si tienes una Stream Deck:

    paru -S streamdeck-ui --noconfirm

    Efectos de Audio:

    sudo pacman -S easyeffects

    VLC:

    sudo pacman -S vlc

    Para poder usar EpicGame y GOG:

    sudo pacman -S heroic-games-launcher-bin

    Blender:

    sudo pacman -S blender

    Cuando abras Blender por primera vez, haz esto para asegurarte de que use toda la potencia de tu gráfica al renderizar:
    Ve al menú superior: Edit > Preferences (Editar > Preferencias). 

    Selecciona la pestaña System (Sistema) en la izquierda. 

    En la parte superior, verás varias pestañas: None, CUDA, OptiX, HIP, OneAPI. 

    Selecciona OptiX (es el motor optimizado de NVIDIA para tarjetas RTX, mucho más rápido que CUDA tradicional para renderizar con trazado de rayos). 

    Marca la casilla de tu NVIDIA GeForce RTX 5070.

    Si tienes una tableta Wacom:

    sudo pacman -S wacomtablet

    wacomtablet: Es el módulo oficial de KDE que te permite configurar todo de forma gráfica desde los ajustes del sistema.

    Si tienes una VR:

    paru -S alvr-bin --noconfirm

    Ollama:

    sudo pacman -S ollama

    En el caso de ollama, si usar NVIDIA, es necesario instalar el paquete de cuda para que Ollama pueda emplear la GPU, si no, irá endemoniadamente lento ya que, ejecutará por la CPU en vez de tu GTP, para ello:

    sudo pacman -S ollama-cuda

    Ejecuta este comando para revertir el servicio de Ollama a su estado original de fábrica:

    sudo systemctl revert ollama

    Vamos a decirle a systemd que tire el proceso viejo de la RAM, lea los nuevos archivos de ollama-cuda y arranque el servicio limpio:

    sudo systemctl daemon-reload 
    sudo systemctl restart ollama

    Abre tu monitor de la gráfica en una terminal: 

    watch -n 1 nvidia-smi

    En otra terminal, pídele algo a tu modelo:  

    ollama run gemma2 "Hola"

    Ahora sí deberías ver cómo el consumo de memoria en nvidia-smi da un salto y el proceso ollama_llama_server aparece procesando felizmente en tu GPU.

    Shelly es un gestor de paquetes moderno para Arch Linux, diseñado para ser una alternativa más intuitiva. Ofrece una interfaz visual centrada en la experiencia del usuario y la facilidad de uso y puedes usar de manera gráfica otros gestores de paquetes:

    sudo pacman -S shelly

    Activamos en segundo plano:

    sudo systemctl enable --now ollama

    GitHub para autenticarnos mediante nuestros proyectos con Git:

    sudo pacman -S github-cli

    Luego:

    gh auth login
  • Responde las preguntas de la terminal con las flechas del teclado y Enter:

    What account do you want to log into? Selecciona GitHub.com.

    What is your preferred protocol for Git operations on this host? Selecciona HTTPS.

    Authenticate Git with your GitHub credentials? Selecciona Yes.

    How would you like to authenticate GitHub CLI? Selecciona Login with a web browser.

    El paso final: La terminal te dará un código de 8 dígitos (cópialo) y te dirá que presiones Enter para abrir tu navegador. Se abrirá la web de

    GitHub, pegas el código, autorizas y ¡listo! Ya estás logueado para siempre en Git.

Entornos de Ejecución y Lenguajes

  • Node.js y npm: El entorno de ejecución de JavaScript, esencial para el desarrollo web moderno con React, Vue, Next.js y similares, puedes instalar una versión específica como:

    sudo pacman -S nodejs npm

    O mejor, se recomienda usar nvm (Node Version Manager) para gestionar múltiples versiones de Node sin conflictos:

    paru -S nvm

    Instalamos la versión legacy:

    nvm install --lts

    O una específica:

    nvm install 20

    Usamos:

    nvm use 20
  • PHP y Composer: Para desarrollo web backend con frameworks como Laravel.

    sudo pacman -S php composer

    Si usas Fish como shell, agrega el directorio de binarios de Composer a tu PATH:

    set -U fish_user_paths $HOME/.config/composer/vendor/bin $fish_user_paths
  • Python y pip: Python viene preinstalado en CachyOS, pero puedes asegurarte de tener las herramientas de desarrollo:

    sudo pacman -S python python-pip
  • Java (JDK): Para desarrollo Android nativo o aplicaciones empresariales.

    sudo pacman -S jdk-openjdk
  • Flutter y Dart: El SDK de Google para desarrollo de aplicaciones multiplataforma (Android, iOS, Web, Desktop) desde un único código base.

    paru -S flutter-bin --noconfirm

    Agregamos al path:

    fish_add_path /opt/flutter/bin

    Si al hacer flutter doctor vez algo como:

  • [✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
      ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

    set -Ux CHROME_EXECUTABLE (which cachy-browser || which google-chrome-stable || which chromium || echo "")

Bases de Datos

  • MariaDB (MySQL): La base de datos relacional más utilizada en desarrollo web.

    sudo pacman -S mariadb
    sudo mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
    sudo systemctl enable --now mariadb
  • PostgreSQL: La base de datos relacional más avanzada del mundo open source.

    sudo pacman -S postgresql
    sudo -u postgres initdb -D /var/lib/postgres/data
    sudo systemctl enable --now postgresql
  • Redis: Almacén de datos en memoria para caché, colas y sesiones.

    sudo pacman -S redis
    sudo systemctl enable --now redis
  • TablePlus / DBeaver: Clientes gráficos para gestionar bases de datos. DBeaver es de código abierto y soporta prácticamente cualquier motor.

    paru -S dbeaver

Instalación y Configuración de PostgreSQL con pgvector

Si quieres trabajar con IA y usar base de datos con vectores, la solución es PSQL.

Una vez que nuestros archivos Markdown han sido fragmentados y convertidos en vectores semánticos, el paso final de la infraestructura consiste en persistirlos en un motor de bases de datos relacional de alto rendimiento que admita operaciones de búsqueda de similitud. En este ecosistema optaremos por PostgreSQL junto con la extensión nativa pgvector.


1. Instalación del Servidor y la Extensión Vectorial

En entornos basados en Arch Linux (como CachyOS), la extensión pgvector ya se encuentra empaquetada en los repositorios oficiales de la comunidad, eliminando la necesidad de compilar las herramientas a mano. Instalamos el core y sus utilidades mediante la terminal:

sudo pacman -S postgresql postgresql-old-upgrade pgvector

postgresql-old-upgrade es una dependencia común que pacman suele solicitar en Arch para la gestión de servicios de base de datos).

2. Inicialización del Clúster de Datos

Antes de arrancar el servicio por primera vez, es obligatorio configurar el directorio base en el disco donde PostgreSQL gestionará físicamente las tablas y los índices. Ejecutamos la inicialización bajo el usuario del sistema dedicado:

sudo -u postgres initdb -D /var/lib/postgres/data

3. Gestión del Servicio con systemd

Activamos el demonio del servidor en segundo plano y lo añadimos a la secuencia de arranque del sistema operativo:

# Iniciar el servidor inmediatamente
sudo systemctl start postgresql

# Habilitar el inicio automático en cada arranque
sudo systemctl enable postgresql

# Para verificar que esté corriendo perfectamente sin errores de puertos o configuración
systemctl status postgresql

4. Creación del Entorno y Credenciales

Accedemos a la consola interactiva integrada (psql) para asignar una contraseña segura al administrador por defecto y estructurar la base de datos de nuestro proyecto (en este ejemplo, llamada ld):

sudo -u postgres psql

Dentro de la interfaz SQL interactiva de Postgres, ejecutamos las sentencias de control:

-- Asignar la clave de acceso al rol administrador
ALTER USER postgres WITH PASSWORD 'root';

-- Instanciar la base de datos dedicada
CREATE DATABASE ld;

-- Salir de la consola de comandos
\q

5. Habilitación de la Extensión pgvector

La extensión ha sido añadida a los binarios del sistema, pero debe ser activada explícitamente en el esquema de nuestra base de datos para que el motor reconozca el tipo de dato vector. Nos conectamos directamente a la nueva instancia:

psql -U postgres -d ld -h localhost

Una vez autenticados con nuestra contraseña, inyectamos el comando de registro:

CREATE EXTENSION IF NOT EXISTS vector;

Puedes verificar el correcto aprovisionamiento de la biblioteca listando las utilidades cargadas mediante el atajo \dx. A partir de este momento, tu instancia de base de datos relacional está lista para almacenar, indexar y realizar cálculos de distancia del coseno sobre matrices numéricas de 768 dimensiones.

Contenedores y Virtualización

  • Docker y Docker Compose: La plataforma de contenedores estándar para desarrollo y despliegue de aplicaciones en entornos aislados y reproducibles.

    sudo pacman -S docker docker-compose
    sudo systemctl enable --now docker
    sudo usermod -aG docker $USER

    Cierra sesión y vuelve a entrar para que los cambios de grupo surtan efecto.

  • Distrobox: Ya mencionado en el glosario, es una herramienta excepcional para correr software de otras distribuciones de forma transparente, compartiendo la GPU y el entorno gráfico. Ideal para DaVinci Resolve, herramientas de Red Hat, etc.

    sudo pacman -S distrobox
  • Podman: Alternativa a Docker sin demonio de fondo (daemonless), más segura por defecto. Completamente compatible con la mayoría de los comandos de Docker.

    sudo pacman -S podman

Herramientas de Red y APIs

  • curl y wget: Herramientas de línea de comandos esenciales para transferir datos y descargar archivos.

    sudo pacman -S curl wget
  • Insomnia / Bruno: Clientes gráficos para probar APIs REST y GraphQL. Bruno es de código abierto y almacena las colecciones como archivos de texto plano (Git-friendly).

    paru -S insomnia-bin
    # o la alternativa open source:
    paru -S bruno-bin
  • ngrok / Cloudflared: Herramientas para exponer un servidor local a internet de forma temporal, útiles para probar webhooks de Stripe, GitHub, etc.

    paru -S cloudflared

Terminal y Shell

  • Fish Shell: Un shell interactivo y amigable con autocompletado inteligente out-of-the-box, resaltado de sintaxis en tiempo real y gestión de historial avanzada. No es compatible con POSIX, pero su curva de aprendizaje es mínima.

    sudo pacman -S fish
    chsh -s /usr/bin/fish     # Establece Fish como shell predeterminado
  • Zsh + Oh My Zsh: La alternativa compatible con POSIX con un ecosistema enorme de temas y plugins.

    sudo pacman -S zsh
    paru -S oh-my-zsh-git
  • Starship: Un prompt minimalista, extremadamente rápido y personalizable para cualquier shell (Fish, Zsh, Bash). Muestra información contextual de Git, versiones de lenguajes, estado de Kubernetes, etc.

    sudo pacman -S starship
  • tmux: Multiplexor de terminal que permite dividir la pantalla en paneles, mantener sesiones persistentes en el servidor y mucho más.

    sudo pacman -S tmux
  • fzf: Un buscador difuso (fuzzy finder) para la terminal que potencia el historial de comandos, la búsqueda de archivos y mucho más.

    sudo pacman -S fzf
  • Alacritty / Kitty: Terminales de alto rendimiento con aceleración por GPU. Mucho más rápidas que los emuladores tradicionales.

    sudo pacman -S alacritty
    # o
    sudo pacman -S kitty

Navegadores y Comunicación

  • Google Chrome:

    paru -S google-chrome --noconfirm

    O un navegador hermoso basado en Firefox:

    sudo pacman -S zen-browser-bin
  • Firefox: Incluido por defecto en muchas configuraciones de CachyOS. Si no está presente:

    sudo pacman -S firefox
  • Discord:

    sudo pacman -S discord
  • Slack:

    paru -S slack-desktop --noconfirm
  • OpenCode:
  • sudo pacman -S opencode
  • Android Studio: El IDE oficial para desarrollo de aplicaciones Android.

    paru -S android-studio --noconfirm

Inteligencia Artificial Local

  • Ollama: La herramienta más sencilla para correr modelos de lenguaje grandes (LLMs) de forma local en tu hardware. Compatible con modelos como Llama 3, Mistral, Phi-3, CodeLlama y muchos más.

    paru -S ollama
    sudo systemctl enable --now ollama
    # Descargar y ejecutar un modelo:
    ollama run llama3.2
  • Open WebUI: Una interfaz web estilo ChatGPT para interactuar con tus modelos de Ollama de forma gráfica. Se despliega como un contenedor Docker.

    docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway \
      -v open-webui:/app/backend/data \
      --name open-webui \
      ghcr.io/open-webui/open-webui:main

    Accede a la interfaz en http://localhost:3000.

Montar discos desde Gestor de particiones de KDE:

Montar discos desde Gestor de particiones de KDE

Parte 7: DaVinci Resolve en CachyOS

DaVinci Resolve es una de las aplicaciones más complejas de configurar en Linux. Aquí documento dos enfoques: instalación nativa (más simple, pero con limitaciones) y mediante contenedor Distrobox (más robusto, la opción recomendada).

Opción A: Instalación Nativa con Pacman y Paru (Hardware NVIDIA)

La instalación nativa en CachyOS es posible, pero requiere primero los controladores privativos y las librerías de cómputo CUDA para que DaVinci pueda aprovechar la GPU:

sudo pacman -S nvidia nvidia-utils opencl-nvidia cuda
paru -S davinci-resolve

Problema: Sin audio o bucle de audio en DaVinci Resolve

Un problema muy común en distribuciones basadas en Arch Linux (CachyOS, Manjaro, EndeavourOS, Garuda) es que DaVinci Resolve no emite sonido o genera un bucle de audio. La causa radica en que DaVinci interactúa directamente con ALSA, y aunque el servidor de audio moderno PipeWire emula ALSA de forma transparente para la mayoría de programas, DaVinci requiere un puente de compatibilidad adicional.

Solución: Instala el paquete pulseaudio-alsa junto a la infraestructura existente de PipeWire:

sudo pacman -Syu pulseaudio-alsa

Una vez completada la instalación, es obligatorio reiniciar el equipo. Reiniciar únicamente los servicios de PipeWire no es suficiente para que DaVinci reconozca el nuevo entorno de audio. Tras el reinicio, verifica la reproducción en la línea de tiempo.

Si el problema persiste, confirma que la pila completa de PipeWire está instalada:

sudo pacman -S pipewire pipewire-alsa pipewire-pulse wireplumber

Luego, desde dentro de DaVinci Resolve, navega a Preferences → System → Video and Audio I/O y establece la Speaker Configuration en ALSA (si está disponible) o en Automatic.

Preferences → System → Video and Audio I/O

Caso especial: Archivos MP4 con audio AAC sin sonido

Si tus clips muestran las ondas de audio correctamente en la línea de tiempo pero no emiten ningún sonido, no es un problema de configuración: es una limitación de licencias. DaVinci Resolve en Linux no soporta la decodificación nativa del códec AAC (el audio estándar de los archivos .mp4 de cámaras modernas y smartphones).

La solución definitiva es transcodificar el flujo de audio del clip a formato PCM sin comprimir antes de importarlo, manteniendo el video intacto:

ffmpeg -i entrada.mp4 -c:v copy -c:a pcm_s16le salida.mp4

Para diagnosticar que ALSA responde correctamente a nivel de sistema antes de culpar a DaVinci, puedes ejecutar:

speaker-test -c 2

Este comando reproduce un ruido rosa alternando entre el canal izquierdo y derecho. Si escuchas el ruido, el problema está en DaVinci y no en el sistema de audio.

Fuente: discuss.cachyos.org — No sound in DaVinci Resolve

También puedes usar una UI gráfica como octopi para instalar Davinci entre otros programas:

paru -S octopi --noconfirm

Opción B: Instalación con Distrobox (Recomendada para máxima estabilidad)

DaVinci Resolve está diseñado oficialmente para Red Hat Enterprise Linux / Rocky Linux. Ejecutarlo de forma nativa en Arch/CachyOS suele romper dependencias con las actualizaciones constantes del sistema rolling release. La solución más robusta y aislada es usar un contenedor de Rocky Linux 9 con Distrobox.

Paso 1: Crear el contenedor base

distrobox create --name davinci-env --image rockylinux:9
distrobox enter davinci-env

Paso 2: Resolver dependencias dentro del contenedor

Al intentar lanzar el binario de DaVinci Resolve en /opt/resolve/bin/resolve, el sistema mostrará errores de librerías faltantes de forma secuencial. A continuación, el mapa completo de errores y sus soluciones:

Error de LibreríaQué hace esa libreríaSolución dentro del contenedor
libGLU.so.1Utilidades de OpenGL para la renderización de la interfazsudo dnf install -y mesa-libGLU
libOpenCL.so.1Interfaz de cómputo abierta para que el motor de video detecte el hardwaresudo dnf install -y ocl-icd
libdbus-1.so.3Sistema de mensajería para comunicación entre hilos y serviciossudo dnf install -y dbus-libs
libxkbcommon-x11.so.0Manejo de mapas de teclado bajo servidores de ventanas X11sudo dnf install -y libxkbcommon-x11
libcrypt.so.1Librería de cifrado heredada (legacy), removida en distros modernas pero exigida por DaVincisudo dnf install -y libxcrypt-compat

Para instalar el combo completo de dependencias de una sola vez y evitar el ciclo de error-instalación-reintento, ejecuta dentro del contenedor:

sudo dnf install -y alsa-lib apr apr-util fontconfig freetype libglvnd-egl libglvnd-opengl \
  libxkbcommon libxkbcommon-x11 libXtst mtdev pulseaudio-libs xcb-util xcb-util-cursor \
  xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm mesa-dri-drivers \
  mesa-vulkan-drivers libXv mesa-libGLU ocl-icd dbus-libs libxcrypt-compat

Paso 3: Corregir permisos del binario

Si copiaste los archivos de DaVinci con privilegios elevados, los archivos pueden mantener restricciones de root que impiden la ejecución:

sudo chmod +x /opt/resolve/bin/resolve
sudo chown -R $USER:$USER /opt/resolve

Paso 4: Integración de la GPU NVIDIA (Aceleración CUDA/OpenCL)

Si DaVinci se cierra de forma repentina después de la línea de log Loaded log config from .../log-conf.xml sin errores de librerías .so, el problema es que el contenedor no tiene acceso a las llamadas de cómputo CUDA/OpenCL de la GPU del sistema anfitrión.

Los repositorios nativos de Rocky Linux no contienen los controladores privativos de NVIDIA. Debes forzar a Distrobox a enlazar los módulos de hardware directamente desde CachyOS:

  1. Sal del contenedor: exit o Ctrl + D.
  2. Vuelve a ingresar forzando la exportación de las interfaces de hardware de NVIDIA:
distrobox enter --nvidia davinci-env
  1. Lanza DaVinci especificando el backend gráfico de Qt compatible para evitar conflictos de visualización:
QT_QPA_PLATFORM=xcb /opt/resolve/bin/resolve

Con estos pasos, el entorno de desarrollo queda completamente configurado con aceleración por GPU y acceso total a los recursos del sistema anfitrión.

Video mudos en Davinci en Linux

Si usas Linux (Esta distro) y necesitas convertir tus videos (por ejemplo, grabaciones de OBS) para que DaVinci Resolve los importe perfectamente con audio y video nativo, puedes usar este script basado en ffmpeg.

Para solucionar el clásico problema de los videos sin audio (o incompatibles) en DaVinci Resolve para Linux, podemos crear un lanzador nativo para el entorno de escritorio. Esto nos permitirá convertir cualquier video (.mp4, .mkv, .mov) al formato profesional DNxHR con audio PCM de 16 bits con solo hacer un clic derecho.

Pasos para integrarlo en tu sistema:

  1. Crea un archivo de texto vacío en tu escritorio o en tu carpeta personal y nómbralo exactamente como: Convertir_DaVinci.desktop
  2. Abre el archivo con cualquier editor de texto y pega el siguiente contenido:
[Desktop Entry]
Type=Application
Name=Convertir para DaVinci
Name[es_VE]=Convertir para DaVinci
Comment=Convierte video a DNxHR y audio a PCM para DaVinci Resolve
Exec=konsole -e ffmpeg -i %f -c:v dnxhd -profile:v dnxhr_hq -c:a pcm_s16le "${f%.*}_davinci.mov"
Icon=video-x-generic
MimeType=video/quicktime;video/mp4;video/matroska;
Terminal=false
StartupNotify=true
X-KDE-SubstituteUID=false

Guarda los cambios.

Haz clic derecho sobre el archivo creado, ve a Propiedades -> Permisos y marca la casilla "Es ejecutable" (o ejecutas chmod +x Convertir_DaVinci.desktop en la terminal).

¿Cómo se usa?

Ahora, cuando vayas a tu carpeta de videos, solo debes hacer clic derecho sobre cualquier archivo multimedia, seleccionar "Abrir con" y elegir "Convertir para DaVinci". Se abrirá una pequeña ventana de la consola Konsole mostrando el proceso de ffmpeg y, al finalizar, tendrás tu archivo listo para editar sin pérdida de calidad.

Otros comandos utiles para vídeos

  • Generar un audio mp3 a partir de un vídeo: ffmpeg -i tu_video.mov -vn -acodec libmp3lame -aq 4 audio_extraido.mp3
  • Generar un mp4 más optimizado en pesos en base a un mov: ffmpeg -i master_avid.mov -c:v libx264 -crf 20 -c:a aac -b:a 192k video_final.mp4

Aprende a configurar el arranque dual, resolver errores del instalador Calamares, gestionar paquetes con Pacman y Paru, y descubre el software esencial para desarrolladores: Flutter, Docker, DaVinci Resolve y más.


Únete a la comunidad de desarrolladores que han decidido dejar de picar código y empezar a construir productos reales. Recibe mis mejores trucos de arquitectura cada semana:

Acepto recibir anuncios de interes sobre este Blog.