Install
Install spotuify, log in, then run doctor before you trust playback.
Requirements
Section titled “Requirements”- Spotify account. Premium is required for local playback through the embedded librespot device (
spotuify-hume). - A terminal. Kitty or iTerm2 gives better cover art, but the app has text fallbacks.
spotuify --helpHomebrew
Section titled “Homebrew”brew tap planetaryescape/spotuifybrew install spotuifyspotuify --helpTo update an existing Homebrew install:
brew updatebrew upgrade spotuifyRelease archives include SHA256 checksums and GitHub artifact provenance attestations. macOS binaries are not notarized yet, so Gatekeeper may still ask you to approve the first launch.
Install script
Section titled “Install script”For macOS and Linux x86_64 release archives, the installer downloads both the archive and its published .sha256 file before installing:
curl -fsSLO https://raw.githubusercontent.com/planetaryescape/spotuify/main/install.shbash install.shspotuify --helpcargo install --git https://github.com/planetaryescape/spotuify --lockedspotuify --helpFrom this repo:
cargo build --release./target/release/spotuify --helpConfigure Spotify
Section titled “Configure Spotify”There is nothing to configure to get started. spotuify uses Spotify’s first-party login, so there is no Client ID or Client Secret to create or paste. Premium is required for playback.
If you would rather authenticate with your own Spotify Developer app, that is the one case where you set keys (see Use your own Spotify app).
spotuify loginspotuify doctorWhat you get: a browser opens, you approve, and the refresh token is stored in the OS credential vault. The daemon then mints a full-access Web API token from your session. The doctor report tells you whether auth, daemon, device visibility, and Spotify API access work.
Use your own Spotify app
Section titled “Use your own Spotify app”Optional, and most people should skip it. To authenticate with your own Spotify Developer app instead of the first-party login, create an app at the Spotify Developer Dashboard with redirect URI http://127.0.0.1:8888/callback, then set the client id before logging in:
export SPOTUIFY_CLIENT_ID=your-app-client-idspotuify loginApps in Spotify’s Development Mode cannot create playlists or save tracks (Spotify returns 403). That restriction is the reason the default login does not use one.
Start the daemon
Section titled “Start the daemon”spotuify daemon startspotuify daemon status --format jsonInstall the platform user service when you want the daemon to survive shell sessions.
spotuify daemon install-serviceFirst sound
Section titled “First sound”spotuify devicesspotuify play "imagine dragons" --type trackIf playback fails with no active device, activate or transfer to the device you want:
spotuify transfer spotuify-humespotuify play "imagine dragons"