Important
๐ฅ Found this useful? A quick star goes a long way.
waybar-lyric fetches and displays real-time lyrics on your Waybar. It provides a
scrolling lyrics display that syncs with your currently playing music, enhancing your
desktop music experience. Checkout the Example waybar
configuration.
- Spotify
- YouTubeMusic (Pear-Desktop)
- Amarok
- Amberol
- TauonMB
- Firefox (Specific domains)
open.spotify.commusic.youtube.com
- Real-time display of the current song's lyrics
- Click to toggle play/pause
- Smart caching system:
- Stores available lyrics locally to reduce API requests
- Remembers songs without lyrics to prevent unnecessary API calls
- Custom waybar tooltip
- Configurable maximum text length
- Detailed logging options
- Profanity filter
- Partial (
badword->b*****d) - Full (
badword->*******)
- Partial (
- LrcLib
SimpMusic(Disabled)- MPRIS metadata
(only works with TaounMB Lyrics) - More...?
(Suggestions are welcome)
- Latest stable version
yay -S waybar-lyric- The latest git commit:
yay -S waybar-lyric-git- NixOS:
environment.systemPackages = [
pkgs.waybar-lyric
];- Home-Manager:
home.packages = [
pkgs.waybar-lyric
];- On Non NixOS:
# without flakes:
nix-env -iA nixpkgs.waybar-lyricYou need GNU
makeandinstall
- Build the waybar-lyric
git clone https://github.com/Nadim147c/waybar-lyric.git
cd waybar-lyric
make- Local install
make install PREFIX=$HOME/.local- Global install
sudo make install PREFIX=/usrNote: You have to make sure that
$GOPATH/bin/in your systemPATHbefore running waybar.
go install github.com/Nadim147c/waybar-lyric@latestThe recommended way to configure waybar-lyric is to generate the configuration snippet using the built-in command:
waybar-lyric initThis will output the proper JSON configuration snippet that you can copy directly
into your Waybar config.jsonc file.
Add to your style.css:
#custom-lyrics {
color: #1db954;
margin: 0 5px;
padding: 0 10px;
}
#custom-lyrics.paused {
color: #aaaaaa; /* Set custom color when paused */
}If you encounter issues:
- Check that any of the supported browser is running is running and connected
- Run with verbose logging
waybar-lyric -v --log-file=/tmp/waybar-lyric.log- Verify DBus connectivity with:
dbus-send --print-reply \
--dest=org.mpris.MediaPlayer2.spotify \
/org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get \
string:org.mpris.MediaPlayer2.Player \
string:PlaybackStatusContributions are welcome! Feel free to submit a Pull Request.
This repository is licensed under AGPL-3.0.