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 discordto ensure the latest Snap version is installed. - Disable GPU acceleration: Launch Discord with
--disable-gpuflag 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
- Open a terminal
Press Ctrl+Alt+T on your keyboard to launch the terminal emulator. - Check for Snap updates
Runsudo snap refresh discord. This command updates the Discord Snap to the latest version available in the Snap Store. - Restart Discord
Close Discord completely by runningpkill discordin the terminal. Then launch Discord from your application menu. - 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
- Launch Discord with the disable-gpu flag
In the terminal, rundiscord --disable-gpu. This tells Discord to use software rendering instead of hardware acceleration. - Test if the loading screen passes
If Discord loads successfully, the issue is related to your GPU drivers or the Snap sandbox GPU access. - Make the flag permanent
Edit the Snap desktop file: runsudo nano /var/lib/snapd/desktop/applications/discord_discord.desktop. Find the line starting withExec=and change it toExec=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. - Restart Discord
Close and reopen Discord from the application menu. The flag will be applied automatically.
Method 3: Clear Discord Cache and User Data
- Close Discord
Runpkill discordto ensure the app is not running. - Remove the Discord config directory
Runrm -rf ~/.config/discord. This deletes all cached data, settings, and login tokens. You will need to log in again after restarting Discord. - Remove Snap-specific cache
Runrm -rf ~/snap/discord/common/.cache/discord. This clears the Snap version’s separate cache folder. - Restart Discord
Launch Discord from the application menu. The app will generate fresh configuration files.
Method 4: Reinstall the Discord Snap Package
- Remove the Discord Snap
Runsudo snap remove discord. This uninstalls Discord and removes its Snap data. - Install Discord Snap again
Runsudo snap install discord. The Snap Store will download the latest version and install it. - Launch Discord
Open Discord from the application menu. Log in with your credentials.
Method 5: Switch to the Native .deb Package
- Remove the Discord Snap
Runsudo snap remove discordto uninstall the Snap version. - Download the .deb package
Visit the official Discord website at discord.com and download the .deb file for Linux. - Install the .deb package
Runsudo dpkg -i ~/Downloads/discord-deb. Replace the filename with the actual downloaded file. - Fix any missing dependencies
Runsudo apt install -fto install any required libraries that are not already present. - 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.