Discord: Difference between revisions
m reword portions of the discord page, installation step |
reformat a large chunk of this page to improve formatting |
||
Line 24: | Line 24: | ||
{{Warning|The usage of such client's goes against Discord's [https://discord.com/terms TOS], and can result in your account being permanently suspended from the platform!}} | {{Warning|The usage of such client's goes against Discord's [https://discord.com/terms TOS], and can result in your account being permanently suspended from the platform!}} | ||
== | ==== Legcord (formerly ArmCord)<ref>https://github.com/Legcord/Legcord</ref> ==== | ||
Lightweight, alternative desktop client with built-in modding extensibility. Nixpkgs provides this client via <code>pkgs.legcord</code>.<syntaxhighlight lang="nixos"> | |||
=== | { config, lib, pkgs, ... }: { | ||
environment.systemPackages = with pkgs; [ | |||
<syntaxhighlight lang=" | legcord | ||
]; | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
=== | ==== BetterDiscord<ref>https://betterdiscord.app/</ref> ==== | ||
Enhances Discord desktop app with new features. Nixpkgs provides the installer via <code>pkgs.betterdiscordctl</code>. This can be added to your configuration, though users may prefer to instead run it one-off via the [[Nix]] cli.<syntaxhighlight lang="bash"> | |||
$ nix-shell -p betterdiscordctl --command 'betterdiscordctl install' # nix-legacy | |||
$ nix run nixpkgs#betterdiscordctl -- install # nix3-cli | |||
$ nix-shell -p betterdiscordctl --command 'betterdiscordctl self-upgrade' # nix-legacy | |||
$ nix run nixpkgs#betterdiscordctl -- self-upgrade # nix3-cli | |||
</syntaxhighlight> | |||
==== OpenAsar<ref>https://github.com/GooseMod/OpenAsar</ref> ==== | |||
<syntaxhighlight lang=" | Open-source alternative to Discord's <code>app.asar</code>. Nixpkgs provides this via <code>pkgs.openasar</code>, though this doesn't provide a usable client. Users should instead prefer overriding the official discord package and add <code>withOpenASAR = true</code>.<syntaxhighlight lang="nixos"> | ||
{ config, lib, pkgs, ... }: { | |||
environment.systemPackages = with pkgs; [ | |||
(discord.override { | |||
withOpenASAR = true; | |||
}) | # withVencord = true; # can do this here too | ||
}) | |||
]; | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
{ | ==== Vencord<ref>https://vencord.dev/</ref> ==== | ||
The cutest Discord client mod. Nixpkgs provides their custom client [https://github.com/Vencord/Vesktop Vesktop] via<code>pkgs.vesktop</code>, or as an override for the official discord package via <code>withVencord = true</code>.<syntaxhighlight lang="nixos"> | |||
{ config, lib, pkgs, ... }: { | |||
environment.systemPackages = with pkgs; [ | |||
# vesktop # If you prefer this | |||
== | (discord.override { | ||
# withOpenASAR = true; # can do this here too | |||
withVencord = true; | |||
}) | |||
]; | |||
} | |||
</syntaxhighlight> | |||
==== | ==== Webcord<ref>https://github.com/SpacingBat3/WebCord</ref> ==== | ||
Discord and [https://spacebar.chat/ Spacebar] client implemented without using the official Discord API. Nixpkgs provides this client via <code>pkgs.webcord</code>.<syntaxhighlight lang="nixos"> | |||
{ config, lib, pkgs, ... }: { | |||
environment.systemPackages = with pkgs; [ | |||
<syntaxhighlight lang=" | webcord | ||
environment.systemPackages = [ | ]; | ||
} | |||
]; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== Troubleshooting == | == Troubleshooting == | ||
=== | === Screensharing on Wayland === | ||
Discord | Discord's screen sharing capabilities have been broken for [https://support.discord.com/hc/en-us/community/posts/360047644231-Native-Wayland-Support?page=2#comments 5 years with no official fix]. The most consistent fix involves using the web version of Discord alongside a browser that supports screen sharing in Wayland, like [[Firefox]]. Alternatively, you can use an [[Discord#Unofficial Clients|unofficial client]] like ''Webcord'' or ''Vesktop'', both of which have fixed this issue in their own ways. | ||
{{Note|Remember to configure an [https://wiki.archlinux.org/title/XDG_Desktop_Portal#List_of_backends_and_interfaces XDG Desktop Portal] with screen cast capabilities!}} | |||
standalone notification daemons | === Notifications causing crashes === | ||
Discord will crash if there is no compatible notification daemon running. This issue is only prevalent in custom desktop environments, such as [[Sway]] or [[Hyprland]]. Comprehensive documentation usually exists for most window managers/compositors and can be found on their respective wikis. Nixpkgs provides a few standalone notification daemons such as <code>pkgs.dunst</code> and <code>pkgs.mako</code>. You may optionally use a notification daemon from a larger DE, such as <code>pkgs.lxqt.lxqt-notificationd</code>, however it is unclear how effective these will be outside of their normal environment.<syntaxhighlight lang="nixos"> | |||
{{ | { config, lib, pkgs, ... }: { | ||
# You will need to add a call for the daemon to actually function. | |||
# This is usually done within the configuration of your respective WM. | |||
# See the official wiki/documentation for your WM for more info. | |||
environment.systemPackages = with pkgs; [ | |||
mako | |||
]; | |||
} | |||
</syntaxhighlight> | |||
=== "Must be your lucky day" popup === | |||
Although Nixpkgs is usually very fast with updates (if you use ''nixos-unstable''), you may still run into this issue intermittently. You may override the discord package with a more up-to-date source, or you may disable this popup entirely by adding <code>"SKIP_HOST_UPDATE": true</code> to <code>~/.config/discord/settings.json</code>. | |||
{{File|~/.config/discord/settings.json|json| | |||
{ | { | ||
"SKIP_HOST_UPDATE": true | |||
}</ | <nowiki>}</nowiki> | ||
}} | |||
=== Opening Links with Firefox === | === Opening Links with Firefox === |