Discord

From ArchWiki
Jump to navigation Jump to search

Discord is a proprietary, cross-platform, all-in-one voice and text chat application. It is especially tailored for gamers; however, 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.

Graphical clients

The official app:

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

Third-party clients:

Command-line clients

There are more CLI-based third-party clients out there hosted on places like GitHub (such as Discline or terminal-discord), although only a few are currently packaged on the AUR.

Chat client plugins

Custom CSS & plugins

BetterDiscord is a project which allows Discord to be modified to use custom CSS and plugins. It can be installed through the betterdiscord-installerAUR Electron-based installer or betterdiscordctl-gitAUR management utility.

Powercord is an alternative client modification for using themes and plugins which requires discord-canary instead of the stable version.

Overlay

For linux clients, Discord does not support in-game overlay. Discover is an open-source X11 application that provides these functions. You may have to install the python-cairo package for Discover to work.

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 libappindicator-gtk3.

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.

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

file $(which discord)

and cd to where the symbolic link points. In this directory (probably /opt/discord/) edit the file resources/build_info.json that should look like:

{
  "releaseChannel": "stable", 
  "version": "0.0.13"
}

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

Start Discord minimized

Discord can be started minimized through the --start-minimized argument.

Microphone noise suppression using pipewire (Krisp replacement)

Although Krisp is not available in Linux, you can achieve similar noise reduction level with Pipewire#Noise suppression for voice.

Troubleshooting

Crackling during voice calls

If you experience crackling sounds when in voice chat, you should try the steps outlined here: PulseAudio/Troubleshooting

Unable to share an individual monitor on a multi-monitor setup

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: Since discord version 0.0.15-1, multi-display streaming is working properly. (Discuss in Talk:Discord)

If you cannot share individual monitors on a multi-monitor setup, you should try mon2cam-gitAUR as a workaround to this bug: Discord Trello[dead link 2021-04-06]

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 $XDG_RUNTIME_DIR/discord-ipc-0 to $XDG_RUNTIME_DIR/app/com.discordapp.Discord/discord-ipc-0. 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 ~/.config/user-tmpfiles.d/:
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 --no-sandbox 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.