Skip to main content

A Spotify overlay widget for KDE/Linux

Project description

Spotify Overlay

A minimal, always-on-top Spotify overlay for Linux.

screenshot

Watch the demo video here!

Click on the link below to see the DEMO. The link is not broken, PyPI does not support video previews.

https://cdn.hackclub.com/019de041-8640-7c8e-b268-1b31af582144/spotifyoverlaydemo.mp4

or watch demo on youtube: https://www.youtube.com/watch?v=lz-RwL30tBo


Features

  • Album art, track title, artist, and album name
  • Playback controls (play/pause, next, previous, shuffle, repeat)
  • Progress bar with seek support
  • Search Spotify directly from the overlay
  • Always on top overlay (KDE Plasma)
  • Communicates with Spotify via D-Bus (MPRIS)
  • System tray icon for toggle / quit
  • Global keybind support with a Unix socket

Requirements

  • Linux with D-Bus
  • Spotify desktop client (the offcial on of course)
  • Python 3.10+
  • KDE Plasma (for the always-on-top behavior; the overlay still runs but staying on- op isn't guaranteed)
  • qdbus6 available on PATH (comes with Qt 6 / KDE Plasma 6)

Installation

From PyPI

pip install spotify-overlay
spotify-overlay --install

The --install adds Spotify Overlay to your application launcher (creates a .desktop entry and installs the icon under ~/.local/share/) so you can launch it like a normal app!

From source

git clone https://github.com/maker-lukas/spotify-overlay.git
cd spotify-overlay
pip install .
spotify-overlay --install

First Launch

  1. Make sure Spotify is running.
  2. Launch Spotify Overlay from your application menu, or run it from a terminal:
    spotify-overlay
    
  3. The overlay window appears and a system tray icon is added.

The overlay is designed to be always running in the background — you toggle it open/closed as needed via the tray icon or a global keybind (see below). Closing the overlay window only hides it; the app keeps running in the tray.


Tray Icon

Once the app is running, look for the Spotify Overlay icon in your system tray:

  • Left-click the tray icon → toggle the overlay (show/hide)
  • Right-click the tray icon → menu with:
    • Help — shows the in-app keybind cheat sheet
    • Quit — fully exits the app (this is the only way to quit; closing the window just hides it)

Setting Up a Global Keybind to Toggle the Overlay

Spotify Overlay listens on a Unix socket so any external command can toggle it. The socket lives at:

/run/user/<your-uid>/spotify-overlay

For most single-user systems your UID is 1000, so the path is /run/user/1000/spotify-overlay. You can confirm with id -u.

Any connection to this socket toggles the overlay. The simplest trigger command is:

nc -U /run/user/1000/spotify-overlay </dev/null

(socat - UNIX-CONNECT:/run/user/1000/spotify-overlay works too.)

Binding it to a hotkey

The exact menu names depend on your desktop environment / window manager, but the command you bind is always the same:

sh -c "nc -U /run/user/1000/spotify-overlay </dev/null"

(Replace 1000 with your UID from id -u if it differs.)

Common ways to bind it:

  • KDE Plasma: System Settings → Shortcuts → Custom Shortcuts → Edit → New → Global Shortcut → Command/URL. Set a trigger key, paste the command above as the action.
  • GNOME: Settings → Keyboard → Keyboard Shortcuts → Custom Shortcuts → +. Name it, paste the command, assign a key.

Make sure spotify-overlay is already running (autostarted, or launched once from the menu). The socket only exists while the app is running.

Keyboard Shortcuts (while overlay is focused)

Key Action
Space Play / Pause
Next track
Previous track
Cycle repeat mode (None → Playlist → Track)
Toggle shuffle
Ctrl+F or / Open the search bar
Enter (in search) Submit search (opens results in Spotify)
Esc Close search bar / hide overlay

Clicking the track title, artist, or album opens the corresponding page or search in the Spotify desktop client.


Quitting

Closing the overlay window (clicking outside it, pressing Esc, etc.) only hides it — the app stays alive in the tray so the global keybind keeps working.

To fully quit, right click the tray icon and click Quit.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spotify_overlay-1.0.11.tar.gz (19.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spotify_overlay-1.0.11-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file spotify_overlay-1.0.11.tar.gz.

File metadata

  • Download URL: spotify_overlay-1.0.11.tar.gz
  • Upload date:
  • Size: 19.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for spotify_overlay-1.0.11.tar.gz
Algorithm Hash digest
SHA256 16af9814a56418944bf7a775a80294bbca9b755fe4c9c904bf2626a1f9e4a352
MD5 1193175c348123ed3dc22e3392d05d11
BLAKE2b-256 cad0693d8d502e5bebeec0a3d6f10260e940f539f51a6e6bbffd10b1ed59f53e

See more details on using hashes here.

File details

Details for the file spotify_overlay-1.0.11-py3-none-any.whl.

File metadata

File hashes

Hashes for spotify_overlay-1.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 acd6cc309ae0a4e5bd22f2fed33bf698046cc60407372e9cafe3453cbe2e7f66
MD5 247f4baaca834d5f85491f87e93c0b21
BLAKE2b-256 23cd67a09483e71c87d6a1a40f092e72ace51df8fd0a219a52308123b94cf321

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page