How to Fix Discord ‘Stuck Loading’ on Linux Snap Package
🔍 WiseChecker

How to Fix Discord ‘Stuck Loading’ on Linux Snap Package

Discord running as a Snap package on Linux can get stuck on the loading screen, showing the spinning Discord logo indefinitely. This prevents you from joining servers, sending messages, or using voice chat. The issue is usually caused by the Snap sandbox blocking Discord from loading its required runtime dependencies, such as Electron and the GPU acceleration layer. This article explains why the Snap version of Discord freezes on startup and provides specific steps to fix the stuck loading problem.

Key Takeaways: Fixing Discord Snap Loading Freeze

  • Snap refresh command: Run sudo snap refresh discord to ensure the latest Snap version is installed.
  • Disable GPU acceleration: Launch Discord with --disable-gpu flag to bypass graphics driver conflicts.
  • Switch to the deb version: Install Discord via the official .deb package to avoid Snap sandbox limitations entirely.

Why Discord Snap Package Gets Stuck on the Loading Screen

The Snap package for Discord runs within a confined sandbox environment. This sandbox restricts how the application accesses system resources, including the GPU, audio devices, and file system. When Discord starts, it tries to initialize its Electron framework and hardware acceleration layer. If the Snap sandbox blocks or delays these operations, the app hangs at the loading screen before the login window appears.

Common triggers include:

  • Outdated Snap package: An old version of the Discord Snap may have known bugs that cause startup failures.
  • GPU driver conflicts: The Snap sandbox may not properly interface with proprietary or open-source GPU drivers, especially on Wayland.
  • Missing system permissions: Snap permissions for home directory access, network, or audio may not be correctly set.
  • Corrupted user data: Discord stores cache and settings in ~/.config/discord/; corrupted files can prevent loading.

How the Snap Sandbox Affects Discord Startup

The Snap confinement model uses AppArmor profiles and Seccomp filters to limit system calls. When Discord tries to access GPU memory or shared libraries outside its allowed paths, the kernel denies the request. Electron then fails to render the UI, leaving the app stuck at the loading screen. This is why the issue appears only on the Snap version and not on the native .deb or Flatpak versions.

Steps to Fix Discord Stuck Loading on Linux Snap

Method 1: Update the Discord Snap Package

  1. Open a terminal
    Press Ctrl+Alt+T on your keyboard to launch the terminal emulator.
  2. Check for Snap updates
    Run sudo snap refresh discord. This command updates the Discord Snap to the latest version available in the Snap Store.
  3. Restart Discord
    Close Discord completely by running pkill discord in the terminal. Then launch Discord from your application menu.
  4. Verify the version
    After Discord loads, go to User Settings > About to confirm the version number matches the latest stable release.

Method 2: Disable GPU Acceleration

  1. Launch Discord with the disable-gpu flag
    In the terminal, run discord --disable-gpu. This tells Discord to use software rendering instead of hardware acceleration.
  2. Test if the loading screen passes
    If Discord loads successfully, the issue is related to your GPU drivers or the Snap sandbox GPU access.
  3. Make the flag permanent
    Edit the Snap desktop file: run sudo nano /var/lib/snapd/desktop/applications/discord_discord.desktop. Find the line starting with Exec= and change it to Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/discord_discord.desktop /snap/bin/discord --disable-gpu %U. Save the file with Ctrl+O, then exit with Ctrl+X.
  4. Restart Discord
    Close and reopen Discord from the application menu. The flag will be applied automatically.

Method 3: Clear Discord Cache and User Data

  1. Close Discord
    Run pkill discord to ensure the app is not running.
  2. Remove the Discord config directory
    Run rm -rf ~/.config/discord. This deletes all cached data, settings, and login tokens. You will need to log in again after restarting Discord.
  3. Remove Snap-specific cache
    Run rm -rf ~/snap/discord/common/.cache/discord. This clears the Snap version’s separate cache folder.
  4. Restart Discord
    Launch Discord from the application menu. The app will generate fresh configuration files.

Method 4: Reinstall the Discord Snap Package

  1. Remove the Discord Snap
    Run sudo snap remove discord. This uninstalls Discord and removes its Snap data.
  2. Install Discord Snap again
    Run sudo snap install discord. The Snap Store will download the latest version and install it.
  3. Launch Discord
    Open Discord from the application menu. Log in with your credentials.

Method 5: Switch to the Native .deb Package

  1. Remove the Discord Snap
    Run sudo snap remove discord to uninstall the Snap version.
  2. Download the .deb package
    Visit the official Discord website at discord.com and download the .deb file for Linux.
  3. Install the .deb package
    Run sudo dpkg -i ~/Downloads/discord-deb. Replace the filename with the actual downloaded file.
  4. Fix any missing dependencies
    Run sudo apt install -f to install any required libraries that are not already present.
  5. Launch Discord
    Open Discord from the application menu. The native version does not use Snap confinement, so loading issues related to sandboxing disappear.

If Discord Still Has Issues After the Main Fix

Discord Opens but Shows a White Screen

A white screen instead of the loading logo indicates a rendering failure. Run Discord with discord --disable-accelerated-2d-canvas. This flag disables the 2D canvas hardware acceleration, which can cause blank screens on some GPU drivers.

Discord Crashes Immediately After Launch

If Discord closes right after starting, the Snap package may have insufficient permissions. Run snap connections discord to list the current interfaces. Ensure the following are connected: network, audio-record, home, wayland, and x11. If any are disconnected, run sudo snap connect discord:<interface-name> to enable them.

Discord Works on X11 but Not Wayland

Discord Snap may not fully support Wayland. Switch to an X11 session from your display manager login screen. Alternatively, install the Flatpak version of Discord from Flathub, which has better Wayland support out of the box.

Discord Snap vs Native .deb vs Flatpak

Item Snap Native .deb
Sandbox confinement Strict AppArmor and Seccomp No sandboxing
Startup reliability Can get stuck on loading due to GPU access Rarely has loading issues
Update method Automatic via Snap Store Manual .deb download or apt repository
GPU acceleration Often broken on Wayland Works with most drivers
File system access Limited to home directory by default Full system access

If the Snap version continues to hang on loading, the native .deb package is the most reliable alternative. It does not impose sandbox restrictions and gives you full control over the application environment. The Flatpak version is another option with moderate sandboxing, but its startup behavior is generally better than Snap.

You now have five methods to fix Discord stuck on the loading screen when using the Linux Snap package. Start with updating the Snap and disabling GPU acceleration, as these resolve most cases. If the problem persists, clearing the cache or reinstalling the Snap may help. For a permanent solution, consider switching to the native .deb package, which avoids Snap sandbox issues entirely. After switching, you can also run Discord with the --no-sandbox flag as a last resort, though this reduces security.