DEV Community

elafaces
elafaces

Posted on

r2modman en Ubuntu: la guía que nadie escribió

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
Enter fullscreen mode Exit fullscreen mode

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 sudo con r2modman, nunca.
  • Si Steam está instalado vía Snap, r2modman no lo detecta.
  • Solución: reinstalar Steam con apt en 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
Enter fullscreen mode Exit fullscreen mode

Si necesitas --no-sandbox siempre, añádelo como alias permanente en tu sistema:

$echo 'alias r2modman="r2modman --no-sandbox"' >> ~/.bashrc$ source ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

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 .deb oficial.

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
Enter fullscreen mode Exit fullscreen mode

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. Usa Ctrl + H para 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
Enter fullscreen mode Exit fullscreen mode

Top comments (0)