Waybar custom modules to display MPRIS media player information and the online lyrics from QQMusic.
- Spotify ✅
- Shows: Status Icon, Song Title - Artist.
- Tooltip (on hover): Player name, song, artist, album, progress, volume, cover art status.
- Album Art: Fetches and caches locally, with a
current_song_art
symlink. - Controls: Click for play/pause, right-click for next, scroll for volume, middle-click to view art.
- Shows synchronized lyrics.
- Source: Local LRC files first, then QQMusic API (via
qqmusic-api
). - Tooltip (on hover): Song, artist, status, current/next lyric line.
- Command
playerctl
: For media player interaction.
- Python 3 library
requests
qqmusic-api-python
: Fetch lyrics from qq music
- Nerd Fonts
- Copy
scripts
to~/.config/waybar/
mkdir -p ~/.config/waybar/
cp scripts ~/.config/waybar/
- Edit
~/.config/waybar/config.jsonc
, add the following:
- Edit
~/.config/waybar/style.css
, for example:
#custom-lyrics {
padding: 0 4px;
color: #a3be8c;
}
#custom-lyrics.playing {
color: #ffffff;
}
#custom-lyrics.paused {
color: #ebcb8b;
}
#custom-lyrics.no-lyrics {
color: #bf616a;
}
#custom-lyrics.no-metadata,
#custom-lyrics.offline,
#custom-lyrics.empty {
color: #6c7086;
}
#custom-lyrics:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
#custom-player {
color: #ffffff;
}
#custom-player:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
#custom-player.offline,
#custom-player.empty {
color: #6c7086;
}
- Restart waybar
- Check script logs for errors:
- Player:
~/.cache/waybar/player/logs/YYYY-MM-DD.log
- Lyrics:
~/.cache/waybar/lyrics/logs/YYYY-MM-DD.log
- Player: