Skip to content

Spotify

Arch Wiki

Daemons

spotifyd

Spotifyd will only work with Spotify Premium

Config: ~/.config/spotifyd/spotifyd.conf

Build:

cd ~/projects/audio/spotify/spotifyd
cargo build --release --features "pulseaudio_backend"

Clients

Arch Wiki: third party clients

spotify-tui

If you want to play tracks, Spotify requires that you have a Premium account.

  • Config: ~/.config/spotify-tui/client.yml

spotify-qt

Etc

Downloaders

DownOnSpot

  • Update: Shut down due to a cease and desist letter from Spotify.
  • GitHub
  • Used librespot
  • Config at ~/.config/down_on_spot/settings.json

Note: librespot only works with Spotify Premium. This will remain the case. We will not support any features to make librespot compatible with free accounts, such as limited skips and adverts.

Setup:

Clone:

git clone https://github.com/oSumAtrIX/DownOnSpot ~/projects/audio/spotify/DownOnSpot
sudo apt install libmp3lame-dev
cd ~/projects/audio/spotify/DownOnSpot

Edit Cargo.toml according to DownOnSpot#building, then:

cargo build --release
ln -s ~/projects/audio/spotify/DownOnSpot/target/release/down_on_spot ~/bin/build/down_on_spot

Config

  • Config: ~/.config/down_on_spot/settings.json
  • Download dir: ~/down_on_spot

Variables example:

  • %0disc%: 01
  • %0track%: 04
  • %album%: Soundtrack of Movie XYZ
  • %albumArtist%: Various Artists
  • %albumArtists%: Various Artists
  • %artist%: Some artist
  • %disc%: 1
  • %id%: ?
  • %title%: Title
  • %track%: 4

Examples of files created by following template:

%albumArtist% - %albumArtist% - %album% - %artist% - %disc% - %id% - %0track% - %title%
./Various Artists - Various Artists - Dein Song 2024 - Shayla Jolie -
  1 - 0YmfW205qCCXmMf0DP8e4i - 03 - Let You Go - Final Version.mp3
./LINA - LINA - Official - LINA - 1 - 5SdlE4nVM3zXmV3B5mMbxc - 08 - Idiot.mp3

Usage

down_on_spot 'spotify:album:<SPOTIFY_ID>'
down_on_spot 'SPOTIFY_URL'

Issues

  • Doesn't well support support playlists
  • Doesn't support release year template variable

spotify-dl

GitHub

spotify-dl doesn't download anything from Spotify. It picks up the metadata from Spotify API and then uses yt-dlp to download the song.

From this comment:

I tried spotify_dl without success. Downloading is working well, but the content is not what I initially selected. I loaded some audiobooks and the title/story was the same, but different version / reader. I then tried to load a single track, and it doesn't load the exact content but is just looking for the same title...

Stale: spotify-downloader

GitHub

cmd: spotdl