Nocturne is a Jellyfin, OpenSubsonic and Bandcamp client that brings all your music together in one place, Nocturne not only connects to existing instances but it's capable of installing and managing its own Navidrome instance
Important
Please be aware that GNOME Code of Conduct applies to Nocturne before interacting with this repository.
Warning
AI generated issues and PRs will be denied, repeated offence will result in a ban from the repository.
- Exploration by songs, artists, albums, radios and playlists
- Playlist management
- Compatibility with Jellyfin, OpenSubsonic, Bandcamp and local files
- Audio equalizer and audio visualizer
- Mpris integration
- Integrated Navidrome instance management
- Automatic lyrics fetching
- Downloads and offline mode
- Cool interface
| HomePage | Song Queue | Lyrics | Song List | Album Page |
|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
The following dependencies are requirements of the project.
python3 >= 3.13gtk4libadwaita-1 >= 1.9glib-2.0 >= 2.84.0libsecretgstreamerblueprint-compiler >= 0.18.0python-requests >= 2.33.1python-colorthief >= 0.2.1python-syncedlyrics >= 1.0.1python-mpris-server >= 0.10.0python-tinytag >= 2.2.1gstreamer1.0-plugins-gstreamer-rs(optional, needed for video rendering)
Most Linux distributions come with Flatpak preinstalled, make sure your device has the Flathub repo enabled.
flatpak install flathub com.jeffser.NocturneNocturne is packaged unofficially in the AUR, to install it first make sure you have an AUR helper such as yay.
yay -S nocturneNocturne is packaged unofficially in the official Debian archive (Available in Debian 14 'forky' and above). Install it via apt.
apt install nocturneNocturne is packaged unofficially in nixpkgs. You can either try it out using nix-shell:
nix-shell -p nocturneor add it to your sytem packages:
environment.systemPackages = [
pkgs.nocturne
];Dependencies are automatically managed and built depending on host environment.
flatpak-builder build com.jeffser.Nocturne.yml --force-clean --install-deps-from=flathub
flatpak-builder --run build com.jeffser.Nocturne.yml nocturne1. Install Dependencies with Homebrew
brew install python@3.14 meson ninja pkgconf \
glib gtk4 libadwaita pygobject3 gstreamer \
gobject-introspection libsecret \
desktop-file-utils# 1. Install blueprint-compiler
git clone https://github.com/GNOME/blueprint-compiler
cd blueprint-compiler
meson build --prefix=/usr/local
sudo ninja install -C build
cd ..
# 2. Clone the project
git clone https://github.com/Jeffser/Nocturne/
cd Nocturne
# 3. Install python packages
python3 -m venv ./venv
source ./venv/bin/activate
pip install requests colorthief syncedlyrics tinytag mpris-servermeson setup build --prefix=$HOME/.local
ninja -C build
ninja install -C buildnocturne| Language | Contributors |
|---|---|
| Spanish | Jeffry Samuel |
| Catalan | Jordi Bultó |
| Basque | Ibai Oihanguren Sala |
| German | Martin Prokoph |
| Russian | Aleksandr Shamaraev gttn-84 |
| Simplified Chinese | Saul Gman |
| Turkish | Muhammed Emin Akalan |
| Traditional Chinese | Yuan Chiu |
| Croatian | Milo Ivir |
| Telugu | Aryan Karamtoth |
| Brazilian Portuguese | Rikelry Souza |
-
Nocturne is an independent application and is not affiliated with, endorsed, or sponsored by OpenSubsonic, Bandcamp, or Jellyfin. All logos and illustrative assets used within the app are the property of their respective owners. All rights are reserved by their respective holders, and will be taken down if requested.
-
Nocturne functions strictly as a client application. All network connections and data transfers are performed exclusively at the request and authorization of the server owner. Nocturne does not independently access or host any content.
-
Nocturne does not facilitate, encourage, or provide mechanisms for music piracy. Users are responsible for ensuring they have the legal right to access and stream the content hosted on the servers they connect to.




