Skip to content
LargeModGames edited this page Oct 11, 2026 · 5 revisions

Installation

Quick Install

Cargo (Recommended)

If you have Rust installed:

cargo install spotatui

Windows

winget install spotatui

macOS

brew tap LargeModGames/spotatui
brew install spotatui

spotatui uses the portaudio backend for better stability and bluetooth device support (AirPods, etc.):

brew install portaudio

Pre-built Binaries

Download from GitHub Releases:

Platform File
Windows 10/11 (64-bit) spotatui-windows-x86_64.zip
Linux (Ubuntu, Arch, Fedora, etc.) spotatui-linux-x86_64.tar.gz
macOS (Intel) spotatui-macos-x86_64.tar.gz
macOS (Apple Silicon M1/M2/M3) spotatui-macos-aarch64.tar.gz

Checksums (.sha256) are provided if you want to verify the download.

Arch Linux (AUR)

yay -S spotatui
# or
paru -S spotatui

Platform-Specific Requirements

Linux

For audio visualization, you need PipeWire installed:

# Debian/Ubuntu
sudo apt-get install libpipewire-0.3-0

# Arch Linux (already included with pipewire)
sudo pacman -S pipewire

# Fedora (already included with pipewire)
sudo dnf install pipewire

Note: Most modern Linux distributions already have PipeWire installed by default.


Building from Source

Ensure you have Rust installed.

Prerequisites

macOS:

brew install portaudio

Linux (Debian/Ubuntu):

sudo apt-get install libssl-dev libasound2-dev pkg-config

Linux (Arch):

sudo pacman -S openssl alsa-lib pkg-config

Linux (Fedora):

sudo dnf install openssl-devel alsa-lib-devel pkg-config

Build

git clone https://github.com/LargeModGames/spotatui.git
cd spotatui

macOS:

cargo install --path . --no-default-features --features telemetry,streaming,portaudio-backend,audio-viz-cpal

Linux/Windows:

cargo install --path .

Nix:

nix-build

Updating

When a new version is available, you'll see a popup notification on startup. To update:

  1. Close spotatui
  2. Run:
    spotatui update --install

If you installed via a package manager (AUR, cargo, etc.), update through there instead.


Command-Line Usage

Beyond the TUI, spotatui has a full command-line interface for scripting playback, searching, and managing plugins β€” see CLI Usage for the complete reference.

Useful top-level flags:

Flag Purpose
-c, --config <PATH> Use a custom config file
--completions <SHELL> Print shell completions (bash/zsh/fish/power-shell/elvish)
--reconfigure-auth Forget the cached Spotify login and log in again
-U, --no-update Skip the auto-update check on this launch
-t, --tick-rate <MS> Override the UI tick rate

Connecting to Spotify

spotatui talks to Spotify the way the official app does. It needs no Spotify developer app and no client ID, and Spotify in spotatui needs a Premium account.

To log in, pick Spotify on the first run, or press d and pick Spotify later. spotatui shows a short code and opens Spotify's pairing page in your browser. Confirm the code there; the login is cached, so this happens once. Run spotatui --reconfigure-auth to forget the login and log in again, for example with another account.

A client.yml from an older version stays on disk and is no longer used for the login. spotatui copies its native-streaming settings and saved device into config.yml and state.yml once.

Clone this wiki locally