Quick start

Prerequisites

  • Python >= 3.8 & pip

  • Spotify account (free or premium)

  • Deezer account (free or premium)

Install

python3 -m pip install -U spot_sync

You should now be able to reference via spotify_sync. However if you aren't it's possible you need to add package install directory to your $PATH. E.g. pip3 show spot-sync | grep Location

Configure

Generate a new config

spotify_sync config generate

Configure config.json as per Schema

(Optional) Add config to the profile cache

spotify_sync config add myFirstProfile ./config.json

Run

Allow spotify_sync to connect to your Spotify account

spotify_sync utils authorize-spotify --profile myFirstProfile

This will direct you to Spotify to authorize the app you created earlier. After you confirm, the url you are directed to will not 'work'. This is expected, copy the url and paste back into the CLI

Start spotify_sync!

spotify_sync run auto --profile myFirstProfile

Any command that accepts a --profile argument also accepts --config instead:

spotify_sync utils authorize-spotify --config /path/to/config.json

If you have a large Spotify library (or are downloading many followed playlists) this first run could take a long time. This is a limit with the Deezer API used to match songs

Other run modes

spotify_sync --help

Usage: spotify_sync [OPTIONS] COMMAND [ARGS]...

  spotify_sync
  A schedulable, configurable CLI downloader for Spotify accounts 

Options:
  --help  Show this message and exit.
  
Commands:
  backup   Backup config and persistent data
  config   Access app configurations
  restore  Restore an existing backup
  run      Run spotify_sync in different modes
  stats    Display stats from various sources
  utils    Helper commands

Last updated