hyprland-wiki/pages/Useful Utilities/App-Clients.md
2022-12-29 11:54:13 +01:00

2.2 KiB

Some clients are known for being a massive pain under Wayland. Here are great replacements for them:

Discord

  • WebCord is a Discord client based on the latest Electron, with support for Wayland Ozone platform, as well as PipeWire screensharing. It has tons of great features and tries not to infringe on the Discord ToS.

  • gtkcord4 is a Discord client written in GTK4. While it does infringe on Discord's ToS, it's relatively safe and doesn't rely on any webview technologies.

Spotify

Spotify does not follow window rules. This is because the client sets is class after the window has opened, thus making it "immune" to windowrules. An alternative to Spotify's GUI client is spotify-tui which can be launched in a terminal with a custom class. While limited in functionality, it is quite powerful and could be preferred over the GUI client. Another alternative is ncspot, a powerful cross-platform ncurses Spotify client written in Rust.

Some users have also reported installing spotifywm has resolved the issue. The original repository by dasJ is no longer working because of some changes made in the newer Spotify version, and until the pull request gets merged, amurzeau's fork does the job.

After following the installation paragraph on the README, start Spotify with:

LD_PRELOAD=/path/to/spotifywm.so spotify

The path MUST be the absolute one. If it's not, the hack will not work.

Now you can freely manage your Spotify client. Always use class to manage the window. For example:

windowrulev2 = tile, class:^(Spotify)$
windowrulev2 = workspace 9, class:^(Spotify)$

Pick your poison.

Matrix/Element

Fractal is a Matrix client written in GTK4. Much like Discord, Element is known to have a lot of problems as a result of being based on Electron. Fractal currently doesn't support VoIP calling, but all other features are supported, including E2EE and cross-device verification.