Back to plugins
v1.2.0 goatnath
About
Spotify Lyrics
A seamless, time-synced scrolling lyrics panel for the Noctalia desktop shell. It integrates directly into your Noctalia bar and displays a beautifully formatted, auto-scrolling lyrics card — no API keys, cookies, or web scraping required.
Plugin
| Field | Value |
|---|---|
| ID | goatnath/spotify-lyrics |
| Entries | Bar widget: lyrics; panel: lyrics-panel; desktop widget: lyrics-desktop |
Requirements
This plugin requires playerctl, python3, and the syncedlyrics Python package.
# Arch Linux
sudo pacman -S playerctl python
pip install syncedlyrics
Usage
1. Set up the Background Daemon
The daemon listens to your media player (Spotify, MPD, etc.) and fetches the lyrics.
- Copy the
spotify_lyrics_daemon.pyfile to your preferred location (e.g.,~/.local/bin/). - Set it up to run in the background. The recommended way is using a systemd user service:
# ~/.config/systemd/user/noctalia-lyrics.service
[Unit]
Description=Noctalia Lyrics Daemon
After=graphical-session.target
[Service]
ExecStart=/usr/bin/python3 /path/to/spotify_lyrics_daemon.py
Restart=always
[Install]
WantedBy=default.target
Start and enable the daemon:
systemctl --user daemon-reload
systemctl --user enable --now noctalia-lyrics.service
2. Enable the Plugin
- Install this plugin from the plugin manager or download the folder to
~/.local/share/noctalia/plugins/spotify-lyrics/. - Enable the plugin via CLI:
noctalia msg plugins enable goatnath/spotify-lyrics
- Add the
lyricswidget to your bar's layout in your~/.local/state/noctalia/settings.toml(next to themediawidget).
start = [ "launcher", "workspaces", "media", "lyrics" ]
3. Toggle the Lyrics Panel
Click the ♫ bar icon to toggle the panel, or run:
noctalia msg panel-toggle goatnath/spotify-lyrics:lyrics-panel
Notes
- Zero Configuration: Lyrics are pulled from public databases (LRCLIB, NetEase) automatically.
- Caching: The daemon caches lyrics and album art to
~/.cache/noctalia/lyrics/so subsequent plays load instantly. - Network: The daemon makes HTTPS requests to LRCLIB and NetEase for lyrics, and to the album art URL provided by MPRIS metadata.
- Processes: Requires a separate
spotify_lyrics_daemon.pyprocess running as a systemd user service.
Versions
| Version | Plugin API | Updated |
|---|---|---|
| v1.2.0 latest | 3 | Aug 6, 2026 |
Older versions stay installable on a Noctalia release whose plugin API is below the latest version's.