Cómo pasar de errores crípticos de Electron y X11 a tener tus mods funcionando, sin morir en el intento.
Instalas r2modman en Ubuntu, abres la terminal con ilusión y te recibe esto:
$ sudo r2modman
FATAL: Running as root without --no-sandbox is not supported.
$ sudo r2modman --no-sandbox
ERROR: Could not open the default X display.
ERROR: xcb_connect() failed, error 1
Bienvenido al club. Este artículo documenta exactamente cómo salir de este pozo, incluyendo el problema secundario con Steam instalado vía Snap.
📝 TL;DR — Resumen ejecutivo
- No uses
sudocon r2modman, nunca.- Si Steam está instalado vía Snap, r2modman no lo detecta.
- Solución: reinstalar Steam con
apten lugar de Snap.- El ejecutable real de Steam queda en
~/.steam/debian-installation/steam.sh
El problema raíz: sudo + Electron = 💀
r2modman está construido sobre Electron. Las apps Electron necesitan acceder al servidor gráfico X11 (o Wayland), que pertenece a tu sesión de usuario. Cuando ejecutas con sudo, el proceso pasa a ser root, que no tiene acceso a ese display.
Aunque añadas --no-sandbox, el problema del display persiste porque X11 tiene autenticación por usuario mediante xauth. Root simplemente no tiene permiso para abrir ventanas en tu sesión.
⛔ ¡Peligro! Nunca ejecutes r2modman con
sudo. Además de no funcionar, si llegase a arrancar, guardaría todos los mods y configs en/root/en lugar de tu carpeta de usuario, causando conflictos masivos con Steam.
Paso 1: Ejecutar r2modman sin sudo
La primera corrección es simplemente no usar privilegios de administrador:
# Correcto
$ r2modman --no-sandbox
# O si el sandbox está configurado correctamente
$ r2modman
Si necesitas --no-sandbox siempre, añádelo como alias permanente en tu sistema:
$echo 'alias r2modman="r2modman --no-sandbox"' >> ~/.bashrc$ source ~/.bashrc
El segundo problema: Steam instalado vía Snap
r2modman arranca, pero cuando intenta detectar Steam aparece el temido "Failed to set the Steam folder". El selector de ejecutables muestra un archivo steam en /snap/bin/ que pesa 21 MB y... no funciona.
El motivo: el Steam de Snap es un wrapper. El binario real vive dentro de un entorno sandbox aislado (/snap/steam/current/) al que r2modman no puede acceder de forma estándar. Si miras dentro, solo encontrarás recursos gráficos, no el ejecutable principal.
⚠️ Advertencia: Steam instalado vía Snap causa problemas con muchas herramientas de terceros en Linux, no solo con r2modman. Si juegas en Linux, lo mejor es usar la versión
.deboficial.
Paso 2: Reinstalar Steam sin Snap
Vamos a limpiar la versión de Snap e instalar la versión de los repositorios de Debian/Ubuntu:
# 1. Eliminar Steam de Snap
$ sudo snap remove steam
# 2. Habilitar la arquitectura de 32 bits (necesaria para Steam)
$ sudo dpkg --add-architecture i386
# 3. Instalar Steam desde los repositorios oficiales
$ sudo apt update
$ sudo apt install steam-installer
# 4. Lanzar Steam una vez para que se auto-instale
$ steam
Tras la primera ejecución, Steam descargará sus archivos propios y quedará instalado en:
📁 ~/.steam/debian-installation/
Paso 3: Apuntar r2modman al ejecutable correcto
Si r2modman no detecta Steam automáticamente tras la reinstalación, ve a Settings → Locations → Change Steam folder y en el selector de archivos navega hasta la siguiente ruta:
📁 ~/.steam/debian-installation/steam.sh
💡 Tip ninja: Los archivos y carpetas ocultas (los que empiezan por
.) pueden no mostrarse en el selector de archivos. UsaCtrl + Hpara mostrarlos, o escribe la ruta manualmente en la barra de direcciones.
✅ Una vez seleccionado steam.sh, r2modman detectará la librería de Steam sin problemas y podrás empezar a instalar mods.
📋 Resumen de comandos (Copy-Paste friendly)
Si quieres hacer todo el proceso del tirón, aquí tienes la secuencia limpia:
# Quitar Steam snap
$ sudo snap remove steam
# Instalar Steam .deb
$sudo dpkg --add-architecture i386$ sudo apt update && sudo apt install steam-installer
$ steam
# Lanzar r2modman correctamente (sin sudo)
$ r2modman --no-sandbox
# Ejecutable de Steam para r2modman (si te lo pide)
# ~/.steam/debian-installation/steam.sh
Top comments (0)