Gelly
A native, lightweight Jellyfin client for music. Written in Rust and GTK.
🦀🐧
- Browse by album, artist and playlist
- MPRIS support
- Search
- Edit Playlists
- Eye candy
- Smart Playlists
- Shuffle songs
- Most played
- Offline support
Gelly is available on Flatpak as io.m51.Gelly
flatpak install io.m51.Gelly
Gelly is available on the aur:
paru -S gelly
There is currently an issue with Flatpak that prevents sandboxed applications from reading the host's certificate store. This means if you are hosting Jellyfin on a server with self-signed certificates which you have installed on the system where you are trying to use the Gelly Flatpak, it will probably fail to connect.
#15 tracks this issue. The workaround for now is to use an alternative installation method other than Flatpak or to connect without TLS. I am looking for someone to help test using alternative TLS backends for reqwest that might fix this issue.
Gelly doesn't have many dependencies. Make sure you have the development libraries for the following installed:
- GTK
- Libadwaita
- Gstreamer
The name of these packages depends on your distribution, but usually something like,
for example, gstreamer-dev. Note that Arch Linux includes development libs with the main
package, btw, so you don't need to install anything extra.
You will also need a rust compiler installed. Gelly does not require any nightly features from Rust.
To make things easy, also install the just command runner.
Gelly leverages gtk-rs for GTK bindings. The majority of the code in Gelly is related to these bindings.
Building and launching a development build of Gelly should then simply be a matter of:
just
And installing a release build:
just release
sudo just install
See the recipes in the justfile for other useful commands.
See CONTRIBUTING.md