Skip to content
linuxundichPublic

About

A GNOME client for controlling Sonos home audio systems, powered by NOSON.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

Gnomos icon

Gnomos

Your Sonos speakers, at home on the GNOME desktop.

Play music, group rooms and set the volume in every room from a native GTK 4 and libadwaita app. Gnomos talks to your speakers directly over your home network. No Sonos account and no cloud service needed.

Download Flatpak  ·  Flathub: planned  ·  Project page  ·  Changelog

Gnomos Now Playing view with a large cover, synced lyrics and playback controls

Play the Gnomos demo video: synced lyrics, room groups, Quick Settings and the mini player
Demo video (1:34). Music: “Border Blaster” by Josh Woodward, CC BY 4.0.

What it does

Now Playing, with lyrics

Click the player bar and the current track fills the window: a large cover on a background in its own colors, what plays next, and time-synced lyrics. Click a line to jump to that part of the song. Prefer vinyl? The cover can spin as a record.

Dark mode with the record player look and synced lyrics

Every room in one place

The room picker shows what plays where. Drag a room onto another to group them, set each room's volume, or start and pause any room with one click.

Your whole music collection

Browse the music share on your network, your Sonos favorites and playlists, internet radio and the services you linked to Sonos, such as Spotify. Even large libraries open instantly as a cover grid.

The room picker with two rooms: one plays, one is paused 1061 albums of the music share as a cover grid

Part of your GNOME desktop

Media keys, the lock screen and the media player in Quick Settings work right away. An optional Shell extension adds the volume of the selected room to the Quick Settings, with an expandable “Other Rooms” list that has a slider for every speaker in the house. A poster-style mini player, dark mode and desktop notifications are built in.

The queue with the sidebar, the playing track marked and the player bar The poster-style mini player

GNOME Quick Settings with a volume slider for every room next to the Gnomos window

Queue, alarms and speaker settings

  • Reorder or remove tracks in the queue, or save it as a Sonos playlist.
  • Favorites with search, alarms you can create, edit and duplicate, and a play history that Gnomos keeps locally because Sonos doesn't.
  • Search internet radio stations by name or country and add them as your own stations.
  • Bass, treble, loudness, night mode, sub gain and fixed line-out volume for every speaker, plus a device info dialog with model, IP address and software version.
  • Keyboard shortcuts for playback, volume, search and the current track, and a sleep timer ring around the play button.
  • Colors from the cover, blurred background, record player and tile size are in the preferences.

The preferences dialog on the Appearance page: color scheme, cover colors, blurred background, record player and tile size

A second life for older speakers

Gnomos works with any Sonos system on your network and keeps first-generation players going, the ZP80, ZP90, ZP100, ZP120 and CR100, which the current Sonos apps no longer support.

How it works

  1. Gnomos finds your Sonos speakers on the local network by itself.
  2. It plays everything Sonos can reach: your music share, radio stations and linked services.
  3. Everything else stays at home. Lyrics from LRCLIB and artist photos from Deezer are the only online lookups, and both stay off until you turn them on.

Under the hood Gnomos uses libnoson, the library behind noson-app.

Install

Note

A release on Flathub is planned. For now, install the Flatpak bundle from the Releases page.

  1. Download gnomos-<version>-x86_64.flatpak from the latest release.
  2. Install it:
flatpak install --user gnomos-*.flatpak

Flatpak fetches the GNOME 51 runtime from Flathub if it is missing. Bundles don't update themselves, so check the Releases page for new versions.

Debian package

Gnomos needs libadwaita 1.9 or newer, so the .deb targets Debian testing (forky) or newer; Debian 13 (trixie) ships libadwaita 1.7 and is too old. Build it with Podman:

build-aux/deb/build.sh
sudo apt install ./build-aux/deb/out/gnomos_*.deb ./build-aux/deb/out/gnome-shell-extension-gnomos-volume_*.deb

Optional: the GNOME Shell extension for room volumes in Quick Settings. To build Gnomos yourself, see docs/BUILDING.md.

On the blog

Gnomos has its own page on my blog Linux und Ich, with more details on the app and news about upcoming versions. The project overview lists everything else I build for the Linux desktop. Questions, ideas or feedback that don't fit into an issue? Get in touch, I read every message.

More

Use of AI

Gnomos is AI-assisted. Most of the code, the icon and the translations were written with AI assistance, directed by me: I set the requirements, made the design decisions, reviewed the results and tested the app on my own first-generation Sonos household. Commits written with AI assistance carry a Co-Authored-By line.

Gnomos is free software under the GPL-3.0-or-later. It is a personal project, tested on the author's own first-generation Sonos household. Album covers in the screenshots belong to their artists and labels.

About

A GNOME client for controlling Sonos home audio systems, powered by NOSON.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages