Discord

Discord is a proprietary, cross-platform, all-in-one voice and text chat application. Many open-source communities have official Discord servers as well. Discord can be used through a web browser or through the desktop application, which is made with Electron.

Installation

You can use one of the following packages to install the desktop application for Discord:

Warning: The usage of third-party clients, or any unofficial package or application that modifies the Discord client, is against Discord's Terms of Service and may get your account banned . You take all responsibility when using such packages. Avoid using outdated or abandoned clients, as they are more likely to trigger Discord's anti-spam system in their API and thus get your account banned.

Official applications

Official clients using system electron

Official clients, using the system provided electron for increased security and potentially better performance:

Third-party clients

  • Abaddon An alternative Discord client made with C++/gtkmm.
https://github.com/uowuo/abaddon || abaddonAUR
  • Fast-Discord A new Discord client made in C++ and Qt.
https://github.com/EnyoYoen/Fast-Discord || fast-discord-gitAUR
  • gtkcord4 GTK4 Discord client in Go.
https://github.com/diamondburned/gtkcord4 || gtkcord4-gitAUR
  • Ripcord A lightweight, proprietary desktop chat client for group-centric services like Slack and Discord built upon the Qt toolkit.
https://cancel.fm/ripcord/ || ripcordAUR

    Command-line clients

    There are numerous CLI-based third party clients on the AUR (and non-packaged ones on Github), although most are deprecated or broken. discordo is maintained and packaged on the AUR as .

    Chat client plugins

    • bitlbee-discord Discord plugin for WeeChat
    https://github.com/terminal-discord/weechat-discord || weechat-discord-gitAUR

    Custom CSS & plugins

    • BetterDiscord A project which allows Discord to be modified to use custom CSS and plugins.
    https://betterdiscord.app/ || betterdiscord-installerAUR

    Overlay

    For Linux clients, Discord does not support in-game overlay. is an open-source GTK application that provides these functions. Discover works on X11 or wlroots environments.

    Tips and tricks

    GNOME top bar icon

    If you would like to have the icon on the top bar of GNOME, install the AppIndicator and KStatusNotifierItem Support extension and .

    Discord asks for an update not yet available in the repository

    Discord will refuse to launch if there is an update available. If the updated version is not yet available in the official repos, you can build and install the updated package using the Arch Build System.

    To disable the update check, add the following to :

      "SKIP_HOST_UPDATE": true

    Or you can cheat. Check for discord's path:

    file $(which discord)

    and cd to where the symbolic link points. In this directory (probably ) edit the file that should look like:

    {
      "releaseChannel": "stable", 
      "version": "0.0.xx"
    }

    You can "upgrade" the version, and trick the launcher. All is reset in a future update.

    Start Discord minimized

    Discord can be started minimized through the argument.

    Microphone noise suppression

    Discord now has noise suppression built in, with both a standard option and an AI-powered option provided by Krisp. You can also provide your own noise suppression on PipeWire by following PipeWire#Noise suppression for voice.

    Screen sharing with audio

    Screen sharing with audio is not supported on Linux. Alternatives include:

    Enabling Developer Tools

    After a recent update, devtools were disabled by default on Discord for safety reasons. To re-enable them, add this to :

      "DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING": true

    Enabling Text-to-Speech

    By default, Text-to-Speech is disabled in the Discord client. However, it can be enabled using the --enable-speech-dispatcher flag. This utilizes the daemon to output the speech.

    Troubleshooting

    Lagging when scrolling through your guilds

    If you experience lags and stutters while scrolling through your guilds please ensure that your hardware acceleration is working correctly. You can do this by opening in a Chromium based browser. If it is not working please check the chapter on Hardware video acceleration and try running Discord with some additional options:

    $ discord --ignore-gpu-blocklist --disable-features=UseOzonePlatform --enable-features=VaapiVideoDecoder --use-gl=desktop --enable-gpu-rasterization --enable-zero-copy

    Crackling during voice calls

    If you experience crackling sounds when in voice chat, try the steps outlined in PulseAudio/Troubleshooting#Glitches, skips or crackling.

    Screen sharing on Wayland

    As of version 0.0.17, the Screen Share feature does not work on Wayland, even when enabling Ozone for Wayland using . See this Reddit post and the Discord bug report.

    As a work around can be used which fully supports screensharing on Wayland, however lacks features like rich presence as it bundles the web version of Discord. The web version itself may also be used.

    Another alternative is to use a virtual camera. See Open Broadcaster Software#Virtual camera output and Screen capture#Via a virtual webcam video feed.

    Enabling rich presence on Flatpak

    When using the Flatpak version of Discord, Rich Presence will not work out of the box. To make it work, it is necessary to create a symlink from to . To create the symlink for the current user session, run:

    $ ln -sf {app/com.discordapp.Discord,$XDG_RUNTIME_DIR}/discord-ipc-0

    To automatically create the symlink, systemd-tmpfiles can be used by adding the following line to a file with the .conf extension in :

    L %t/discord-ipc-0 - - - - app/com.discordapp.Discord/discord-ipc-0

    Discord becomes unresponsive during long calls

    If Discord becomes unresponsive during long calls, try the argument. You can also add the following to your .bashrc, or alias file for your shell:

    alias discord='discord --no-sandbox'

    Discord freezes after getting pinged or messaged

    If a message that would trigger a notification (pings, DMs, servers with notifications on, etc) causes the client to freeze, the client is failing to find a notification server. To fix it without installing a notifications server, disable Enable Desktop Notifications in the Notifications options.

    Notification sounds do not work with PipeWire

    See PipeWire#No notification sounds from Discord.

    Emojis are not rendered correctly

    If you encounter rendering issues regarding emojis (rendering as rectangles for example), discord-canary-electron-binAUR has the appropriate fonts as optional dependencies. You should install ttf-symbolaAUR, , and .

    If clicking a link does not open a tab in your default web browser, you should install the optional dependency.

    Sync with computer feature not working

    Discord is parsing the following file to find which theme to apply:

    $HOME/.config/gtk-3.0/settings.ini

    and it is looking for these specific lines:

    [Settings]
    gtk-theme-name=Adwaita-dark

    If you change the theme from Adwaita-dark to Adwaita, then Discord will automatically change to light version and vice-versa.

    Note that Discord only supports a few popular themes, so if it does not work for your particular theme (in this example with Materia theme), a "dirty" fix would be to put the following in your settings.ini file:

    [Settings]
    gtk-theme-name=Adwaita-dark
    gtk-theme-name=Materia-dark

    The definition order is important because GTK will use the second variable definition so in this case Materia-dark but Discord will still successfully detect that you are using a dark theme by providing Adwaita-dark in the first variable definition of the GTK theme.

    Blurry Discord icon in KDE Plasma system tray

    You can attempt to fix this issue by installing to replace , which is known to cause this issue.

    Discord spams systemd journal

    You may find that Discord creates a lot of messages in your journal in a format like:

    (device_info_linux.cc:45): NumberOfDevices

    To disable the logging that causes this pollution: go to User Settings, select "Voice & Video", scroll to bottom of the screen and disable "Debug Logging".

    No voice chat in a pure-ALSA environment

    Discord’s desktop application relies on PulseAudio for voice chat and does not run on ALSA directly. Using apulse as a workaround is, in this case, deprecated. If you want to use Discord’s voice chat without PulseAudio or Pipewire, access Discord’s web client through a Chromium-based web browser. Alternatively, as a Chromium-based wrapper, Webcord works in pure-ALSA environments.

    If you choose this route and are unable to unmute, i.e., to get permission to access your microphone, set it as default capture device in . Also, in Discord, go to User Settings > Voice & Video > Input Device, and make sure Default is selected.

    Notification badge is missing

    Discord can display a badge showing the number of unread mentions on the taskbar icon. If the badge is not displayed, verify that the package is installed, as it is required for this feature to work.

    gollark: Plus I can be smugly superior to people.
    gollark: Using Arch everywhere gives me a relatively consistent environment, and I like that it's rolling release and lightweight.
    gollark: I really should get LDAP working properly.
    gollark: I run on entirely Linux, and somehow entirely *Arch* Linux.
    gollark: Loud rack servers instead of... also loud tower servers, VMs instead of containers, Windows instead of Linux, bizarrely convoluted nested reverse proxies for some reason, old PHP/ASP applications instead of my shinier Node/Python ones, sort of thing.
    This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.