Skip to content

Spotify

spotify-player is a TUI Spotify client that runs natively in the terminal. No Electron, no browser — keyboard-driven playback from any terminal window.

Screenshots coming soon.
MethodCommand
KeybindingSuper + Shift + M
Terminalspotify_player

A Spotify Premium account is required. On first launch, follow the OAuth prompt to authenticate.

spotify-player exposes playback state via MPRIS2 over D-Bus. This lets other tools — waybar, playerctl, media keys — control and observe playback without talking to the app directly.

playerctl discovers MPRIS players by querying D-Bus for org.mpris.MediaPlayer2.* service names. Any running MPRIS-capable player is automatically available:

playerctl --list-all # list active MPRIS players
playerctl status # Playing / Paused / Stopped
playerctl metadata artist # current artist
playerctl metadata title # current track

The media-control script wraps playerctl for consistent output across players:

CommandAction
media-control statusPrint current status and track
media-control play-pauseToggle playback
media-control nextSkip to next track
media-control prevPrevious track
media-control waybarJSON output for waybar module

Example output:

Playing: Artist Name — Track Title

The custom/media module in waybar shows now-playing info pulled from media-control waybar.

InteractionAction
ClickPlay / pause
Scroll upNext track
Scroll downPrevious track

The module updates every 2 seconds. When nothing is playing, it hides itself. The tooltip shows full track info including player name and playback state.