Cómo solucionar que Discord se quede cargando en el paquete snap de linux
🔍 WiseChecker

Cómo solucionar que Discord se quede cargando en el paquete snap de linux

Discord ejecutándose como paquete Snap en Linux puede quedarse atascado en la pantalla de carga, mostrando el logotipo giratorio de Discord indefinidamente. Esto te impide unirte a servidores, enviar mensajes o usar el chat de voz. El problema suele deberse a que el sandbox de Snap bloquea que Discord cargue sus dependencias de tiempo de ejecución necesarias, como Electron y la capa de aceleración por GPU. Este artículo explica por qué la versión Snap de Discord se congela al iniciar y proporciona pasos específicos para solucionar el problema de carga atascada.

Puntos clave: Solucionar el congelamiento de carga de Discord Snap

  • Comando de actualización de Snap: Ejecuta sudo snap refresh discord para asegurarte de que esté instalada la última versión de Snap.
  • Desactivar la aceleración por GPU: Inicia Discord con el indicador --disable-gpu para evitar conflictos con los controladores gráficos.
  • Cambiar a la versión .deb: Instala Discord mediante el paquete .deb oficial para evitar por completo las limitaciones del sandbox de Snap.

ADVERTISEMENT

Por qué el paquete Snap de Discord se queda atascado en la pantalla de carga

El paquete Snap de Discord se ejecuta dentro de un entorno sandbox confinado. Este sandbox restringe cómo la aplicación accede a los recursos del sistema, incluidos la GPU, los dispositivos de audio y el sistema de archivos. Cuando Discord se inicia, intenta inicializar su framework Electron y la capa de aceleración por hardware. Si el sandbox de Snap bloquea o retrasa estas operaciones, la aplicación se queda colgada en la pantalla de carga antes de que aparezca la ventana de inicio de sesión.

Los desencadenantes comunes incluyen:

  • Paquete Snap desactualizado: Una versión antigua del Snap de Discord puede tener errores conocidos que causan fallos de inicio.
  • Conflictos con los controladores de GPU: El sandbox de Snap puede no interactuar correctamente con controladores de GPU propietarios o de código abierto, especialmente en Wayland.
  • Permisos del sistema faltantes: Los permisos de Snap para el acceso al directorio home, la red o el audio pueden no estar configurados correctamente.
  • Datos de usuario dañados: Discord almacena la caché y la configuración en ~/.config/discord/; los archivos dañados pueden impedir la carga.

Cómo afecta el sandbox de Snap al inicio de Discord

El modelo de confinamiento de Snap utiliza perfiles de AppArmor y filtros Seccomp para limitar las llamadas al sistema. Cuando Discord intenta acceder a la memoria de la GPU o a bibliotecas compartidas fuera de sus rutas permitidas, el kernel deniega la solicitud. Entonces Electron no puede renderizar la interfaz, lo que deja la aplicación atascada en la pantalla de carga. Por eso el problema aparece solo en la versión Snap y no en las versiones nativas .deb o Flatpak.

Pasos para solucionar que Discord se quede cargando en Linux Snap

Método 1: Actualizar el paquete Snap de Discord

  1. Abre una terminal
    Presiona Ctrl+Alt+T en tu teclado para iniciar el emulador de terminal.
  2. Busca actualizaciones de Snap
    Ejecuta sudo snap refresh discord. Este comando actualiza el Snap de Discord a la última versión disponible en la Snap Store.
  3. Reinicia Discord
    Cierra Discord por completo ejecutando pkill discord en la terminal. Luego inicia Discord desde tu menú de aplicaciones.
  4. Verifica la versión
    Después de que Discord cargue, ve a Configuración de usuario > Acerca de para confirmar que el número de versión coincide con la última versión estable.

Método 2: Desactivar la aceleración por GPU

  1. Inicia Discord con el indicador disable-gpu
    En la terminal, ejecuta discord --disable-gpu. Esto le indica a Discord que use renderizado por software en lugar de aceleración por hardware.
  2. Comprueba si pasa la pantalla de carga
    Si Discord carga correctamente, el problema está relacionado con tus controladores de GPU o con el acceso a la GPU del sandbox de Snap.
  3. Haz permanente el indicador
    Edita el archivo de escritorio de Snap: ejecuta sudo nano /var/lib/snapd/desktop/applications/discord_discord.desktop. Busca la línea que comienza con Exec= y cámbiala a Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/discord_discord.desktop /snap/bin/discord --disable-gpu %U. Guarda el archivo con Ctrl+O, luego sal con Ctrl+X.
  4. Reinicia Discord
    Cierra y vuelve a abrir Discord desde el menú de aplicaciones. El indicador se aplicará automáticamente.

Método 3: Borrar la caché y los datos de usuario de Discord

  1. Cierra Discord
    Ejecuta pkill discord para asegurarte de que la aplicación no se esté ejecutando.
  2. Elimina el directorio de configuración de Discord
    Ejecuta rm -rf ~/.config/discord. Esto elimina todos los datos en caché, la configuración y los tokens de inicio de sesión. Deberás iniciar sesión de nuevo después de reiniciar Discord.
  3. Elimina la caché específica de Snap
    Ejecuta rm -rf ~/snap/discord/common/.cache/discord. Esto borra la carpeta de caché separada de la versión Snap.
  4. Reinicia Discord
    Inicia Discord desde el menú de aplicaciones. La aplicación generará archivos de configuración nuevos.

Método 4: Reinstalar el paquete Snap de Discord

  1. Elimina el Snap de Discord
    Ejecuta sudo snap remove discord. Esto desinstala Discord y elimina sus datos de Snap.
  2. Instala de nuevo el Snap de Discord
    Ejecuta sudo snap install discord. La Snap Store descargará la última versión y la instalará.
  3. Inicia Discord
    Abre Discord desde el menú de aplicaciones. Inicia sesión con tus credenciales.

Método 5: Cambiar al paquete .deb nativo

  1. Elimina el Snap de Discord
    Ejecuta sudo snap remove discord para desinstalar la versión Snap.
  2. Descarga el paquete .deb
    Visita el sitio web oficial de Discord en discord.com y descarga el archivo .deb para Linux.
  3. Instala el paquete .deb
    Ejecuta sudo dpkg -i ~/Downloads/discord-deb. Reemplaza el nombre del archivo con el archivo descargado real.
  4. Soluciona las dependencias faltantes
    Ejecuta sudo apt install -f para instalar las bibliotecas necesarias que aún no estén presentes.
  5. Inicia Discord
    Abre Discord desde el menú de aplicaciones. La versión nativa no usa el confinamiento de Snap, por lo que los problemas de carga relacionados con el sandbox desaparecen.

ADVERTISEMENT

Si Discord sigue teniendo problemas después de la solución principal

Discord se abre pero muestra una pantalla blanca

Una pantalla blanca en lugar del logotipo de carga indica un fallo de renderizado. Ejecuta Discord con discord --disable-accelerated-2d-canvas. Este indicador desactiva la aceleración por hardware del lienzo 2D, que puede causar pantallas en blanco en algunos controladores de GPU.

Discord se bloquea inmediatamente después de iniciarse

Si Discord se cierra justo después de iniciarse, el paquete Snap puede tener permisos insuficientes. Ejecuta snap connections discord para listar las interfaces actuales. Asegúrate de que las siguientes estén conectadas: network, audio-record, home, wayland y x11. Si alguna está desconectada, ejecuta sudo snap connect discord:<interface-name> para habilitarlas.

Discord funciona en X11 pero no en Wayland

Es posible que Discord Snap no sea totalmente compatible con Wayland. Cambia a una sesión X11 desde la pantalla de inicio de sesión de tu gestor de pantalla. Como alternativa, instala la versión Flatpak de Discord desde Flathub, que tiene mejor compatibilidad con Wayland desde el primer momento.

Discord Snap vs .deb nativo vs Flatpak

Elemento Snap .deb nativo
Confinamiento en sandbox AppArmor y Seccomp estrictos Sin sandbox
Fiabilidad de inicio Puede quedarse atascado en la carga debido al acceso a la GPU Rara vez tiene problemas de carga
Método de actualización Automático mediante Snap Store Descarga manual del .deb o repositorio apt
Aceleración por GPU A menudo rota en Wayland Funciona con la mayoría de los controladores
Acceso al sistema de archivos Limitado al directorio home de forma predeterminada Acceso total al sistema

Si la versión Snap sigue colgándose en la carga, el paquete .deb nativo es la alternativa más fiable. No impone restricciones de sandbox y te da control total sobre el entorno de la aplicación. La versión Flatpak es otra opción con un sandbox moderado, pero su comportamiento de inicio suele ser mejor que el de Snap.

Ahora tienes cinco métodos para solucionar que Discord se quede atascado en la pantalla de carga cuando usas el paquete Snap de Linux. Comienza actualizando el Snap y desactivando la aceleración por GPU, ya que esto resuelve la mayoría de los casos. Si el problema persiste, borrar la caché o reinstalar el Snap puede ayudar. Para una solución permanente, considera cambiar al paquete .deb nativo, que evita por completo los problemas del sandbox de Snap. Después de cambiar, también puedes ejecutar Discord con el indicador --no-sandbox como último recurso, aunque esto reduce la seguridad.

ADVERTISEMENT