How to Install Fastpotify on Debian: A Fast, Native Spotify Client

Fastpotify is a Spotify client for the desktop, written in Rust with egui and playing music through librespot. There is no browser engine anywhere in the process: it starts in well under a second and typically sits at 100–250 MB of RAM, where the official Spotify desktop app often needs 600 MB to over a gigabyte. It is still a complete client, with your whole library, search, playlist editing, a queue, Spotify Connect and proper Linux media controls.

Fastpotify is young, moves quickly and is not part of the official Debian archive. Upstream offers release archives and build-from-source instructions, which leaves you copying binaries and desktop files around by hand and remembering to repeat that on every release.

The unofficial deb.griffo.io repository removes that friction: it packages Fastpotify as a standard Debian .deb, complete with its desktop entry and icon, served over APT, so installation and updates use the tooling you already run for the rest of your system.

Install the Latest Fastpotify on Debian: The Short Version

If you only came for the commands, this adds the repository and installs the latest Fastpotify .deb package on Debian:

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
sudo apt install fastpotify

The rest of this guide explains what each command does, how to verify the install, how to sign in and play music, how to keep Fastpotify up to date, and what to check when something goes wrong.

What Makes Fastpotify Special?

  • ⚡ Native and light - A Rust and egui application with no embedded browser, starting in well under a second and using a fraction of the official client’s memory.
  • 🔊 Spotify Connect device - Your computer shows up as a Connect device, so you can start music from your phone and hear it on your desktop, with gapless playback at up to 320 kbps.
  • 📱 Controls every device - Move playback to a speaker, phone or another computer and keep controlling play, pause, seek, shuffle, repeat and volume.
  • 📚 Your whole library - Playlists, Liked Songs, saved albums, followed artists, podcasts and saved episodes, plus Home with Made for you and recommendations.
  • ✏️ Playlist editing - Create, rename, reorder and delete playlists, and drag songs straight onto a playlist in the sidebar.
  • 🔗 Opens Spotify links - Registers for spotify: links, so a shared song, album or playlist opens in Fastpotify, running or not.
  • 🎛️ MPRIS integration - Media keys, your desktop shell and playerctl treat it like any other Linux player.
  • 🧺 Keeps playing in the tray - Closing the window leaves the music running; reopen it from the tray icon.
  • 📼 Winamp mini player and MilkDrop - A skinnable mini player with a ten-band equaliser, and a MilkDrop visualiser in its own window.
  • ⌨️ Keyboard-first - Every common action has a shortcut.

Why Use the deb.griffo.io Repository?

  • Easy installation and updates through APT, no hand-extracted release archive.
  • Desktop integration included - the package installs the desktop entry and icon, so Fastpotify appears in your application menu and handles spotify: links.
  • Automatic dependency management - the audio, OpenGL, X11 and Wayland libraries the binary loads at run time are declared as package dependencies.
  • Always tracks upstream releases so you stay close to the latest Fastpotify.
  • No compiling from source and no Rust toolchain, CMake or libclang to maintain.

Prerequisites

Before you start, make sure you have:

  • A Debian system running Trixie 13, Forky, or Sid
  • An amd64 or arm64 machine
  • sudo privileges
  • curl installed (sudo apt install curl if needed)
  • A desktop session (X11 or Wayland), ideally with a working system tray
  • A Spotify Premium account to play music on this computer

Bookworm 12 is not supported. The upstream binaries are built against glibc 2.39, and Bookworm ships glibc 2.36, so there is no Fastpotify package for it. A free Spotify account can sign in, browse and search, but Spotify only allows playback through third-party clients like this one with Premium.

Step 1: Add the deb.griffo.io Repository

Add the signing key and repository source:

# Create the keyrings directory
sudo install -d -m 0755 /etc/apt/keyrings

# Download and install the repository GPG key
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg

# Add the repository (auto-detects your distro codename)
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null

# Update the package list
sudo apt update

What each command does:

  1. Create the keyrings directory - ensures /etc/apt/keyrings exists with proper permissions.
  2. Install the GPG key - downloads the repository key and de-armours it into a dedicated keyring for verification.
  3. Add the repository - writes a signed-by source line, with lsb_release -sc supplying your Debian codename.
  4. Update the package list - refreshes APT so it knows about the new packages.

Step 2: Update the Package List

If you skipped the last line, run the update now:

sudo apt update

Step 3: Install Fastpotify

Install Fastpotify with APT:

sudo apt install fastpotify

APT pulls in the runtime libraries Fastpotify needs and installs the binary to /usr/bin/fastpotify, along with a desktop entry and icon. It also recommends fonts-noto-core and fonts-noto-cjk, which let titles in Chinese, Japanese, Korean, Arabic, Hebrew, Thai and Indic scripts render instead of showing as empty boxes. APT installs recommended packages by default; if you have turned that off, add them explicitly:

sudo apt install fonts-noto-core fonts-noto-cjk

Step 4: Verify the Installation

Confirm the version from a terminal:

fastpotify --version

You should see output similar to:

fastpotify 0.7.1

fastpotify --help lists the handful of command-line options. Fastpotify itself is a graphical application, so the real test is launching it.

Getting Started with Fastpotify

Launching the App

Open Fastpotify from your application menu, or start it from a terminal:

fastpotify

Fastpotify runs as a single instance: launching it again simply brings the existing window forward instead of starting a second copy.

Signing In

Press Sign in with Spotify. Your browser opens Spotify’s own consent page, so Fastpotify never sees your password. Once you approve, the browser hands control back to the app and your library loads. You normally only need to do this once per machine.

Enabling Playback on This Computer

Spotify authorises library access and audio streaming separately, so playing music on this machine needs a second, one-time approval. Open the device menu in the player bar and choose Set up playback here, or start it from Settings. This is the step that requires Spotify Premium.

Afterwards your computer appears as a Spotify Connect device called Fastpotify. You can rename it in Settings, or just for one session from the command line:

fastpotify --device-name "Office Desktop"

Spotify Connect and Your Other Devices

Because Fastpotify is a Connect device in its own right, you can pick it from the Spotify app on your phone and hear the music on your desktop. It works the other way round too: the device picker moves playback to speakers, phones or other computers on your account, and Fastpotify keeps controlling them. It also discovers librespot, spotifyd and supported hardware receivers on your network over mDNS.

Media Keys and playerctl

On Linux, Fastpotify registers as an MPRIS player. Media keys and your desktop’s media controls work out of the box, and so does playerctl:

# Toggle play/pause
playerctl --player=fastpotify play-pause

# Skip to the next track
playerctl --player=fastpotify next

# Show what is playing
playerctl --player=fastpotify metadata --format '{{ artist }} - {{ title }}'

Install playerctl with sudo apt install playerctl if you do not have it. This is the Linux way to script Fastpotify: the fastpotify play-pause style subcommands exist for macOS and Windows, which have no MPRIS bus, and on Linux they just point you back to playerctl.

Fastpotify’s desktop entry registers it for spotify: links, and it also accepts a link on the command line:

# Open a Spotify URI or open.spotify.com address in the running app
fastpotify "https://open.spotify.com/album/..."

If another Spotify client is installed too, make Fastpotify the default handler:

xdg-mime default fastpotify.desktop x-scheme-handler/spotify

The Tray, Shortcuts and the Mini Player

Closing the window does not stop the music: Fastpotify keeps playing from the system tray. Reopen it from the tray icon or media controls, and quit from the tray menu or with Ctrl+Q. If you prefer the close button to quit, change that in Settings.

A few shortcuts worth learning early:

ShortcutWhat it does
SpacePlay or pause
Ctrl+← / Ctrl+→Previous or next
Ctrl+F or /Search
QQueue panel
BLike or unlike the playing song
Ctrl+MWinamp mini player
Ctrl+Shift+KMilkDrop visualiser
Ctrl+,Settings
Ctrl+/ or ?Show every shortcut

The Winamp mini player accepts classic .wsz skins; drop one from the Winamp Skin Museum onto either window to add it.

Settings and Files

Preferences live in a readable JSON file at ~/.config/fastpotify/settings.json: the Connect device name, bitrate, normalisation, gapless playback, the audio backend (PulseAudio/PipeWire or ALSA), cache size, theme and more. Session state and logs sit under ~/.local/state/fastpotify/, and the audio, artwork and lyrics caches under ~/.cache/fastpotify/, which you can delete at any time without being signed out.

Keeping Fastpotify Updated

Because Fastpotify arrived via APT, updates come with the rest of the system:

sudo apt update && sudo apt upgrade

Whenever deb.griffo.io ships a newer Fastpotify, apt upgrade installs it automatically. Upstream explicitly treats package-managed installs as updated by their package manager, so there is no in-app updater to fight with; restart Fastpotify after an upgrade to pick up the new version.

Other Tools from deb.griffo.io

The repository packages plenty of tools that fit naturally alongside Fastpotify:

  • cliamp - a retro, Winamp-inspired music player that lives in the terminal.
  • termusic - a terminal music and podcast player for your local collection.
  • lowfi - an extremely simple lofi player for focused work.
  • Ulauncher - a fast application launcher to open Fastpotify from the keyboard.

Troubleshooting

GPG or Key Errors

If APT reports an unsigned repository or an invalid key, import it again:

curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
sudo apt update

Package Not Found

If APT cannot see the fastpotify package:

  1. Re-run sudo apt update after adding the repository.
  2. Confirm your release is supported. Fastpotify is built for Trixie, Forky and Sid only; on Bookworm there is no package, because the binary needs glibc 2.39. Check with lsb_release -sc.
  3. Confirm your architecture with dpkg --print-architecture. Only amd64 and arm64 are available.
  4. Inspect the source list: cat /etc/apt/sources.list.d/deb.griffo.io.list.

Music Will Not Play on This Computer

Browsing works but nothing plays locally? Check the usual suspects in order:

  1. You completed Set up playback here; library sign-in alone does not authorise streaming.
  2. The account is Spotify Premium. Free accounts cannot play through Fastpotify.
  3. The right audio backend is selected in Settings (PulseAudio/PipeWire or ALSA), then press Apply and restart playback.

For more detail, start it from a terminal with extra logging and look at ~/.local/state/fastpotify/fastpotify.log:

fastpotify --verbose

Sign-In Is Not Remembered

Fastpotify stores its Spotify grants on disk under ~/.local/state/fastpotify/, and newer releases move them into the desktop keyring through the Secret Service API. If you are asked to sign in on every launch, make sure that directory is writable, and on newer versions that a Secret Service provider such as GNOME Keyring or KWallet is running and unlocked.

Titles Show as Empty Boxes

Your system is missing fonts for that script. Install the recommended Noto fonts:

sudo apt install fonts-noto-core fonts-noto-cjk

The Window Closes and There Is No Tray Icon

Fastpotify keeps playing in the tray, which needs a desktop with a working system tray. On GNOME that usually means installing an AppIndicator extension. Without one, quit with Ctrl+Q, or set the close button to quit in Settings.

Uninstalling

Remove Fastpotify with:

sudo apt remove fastpotify

Your settings, session and caches stay in your home directory. To remove those as well, sign out from Settings first, then:

rm -rf ~/.config/fastpotify ~/.local/state/fastpotify ~/.cache/fastpotify

To also drop the repository and key:

sudo rm /etc/apt/sources.list.d/deb.griffo.io.list
sudo rm /etc/apt/keyrings/deb.griffo.io.gpg
sudo apt update

Conclusion

Fastpotify shows how light a Spotify client can be when it does not ship a web browser: sub-second start-up, a small memory footprint, and still the full library, Spotify Connect and proper MPRIS media controls. Installing it from deb.griffo.io gives Debian users all of that as an ordinary package, desktop entry and dependencies included.

Add the repository once, apt install fastpotify, sign in through your browser and approve playback, and from then on new releases arrive with the same apt upgrade you run for everything else.

Frequently Asked Questions

How do I install the latest Fastpotify on Debian?

Add the deb.griffo.io APT repository and its signing key, then run sudo apt install fastpotify. The repository tracks upstream Fastpotify releases, so you get the latest packaged version without downloading archives by hand.

Is there a .deb package for Fastpotify?

Yes. deb.griffo.io publishes Fastpotify as a signed .deb for Debian on amd64 and arm64. You could download that .deb and install it by hand, but adding the repository is the better option: APT then resolves the many runtime libraries it needs and picks up new versions on its own.

Does Fastpotify work on Debian Bookworm?

No. The upstream binary requires glibc 2.39 and Bookworm ships 2.36, so packages are only built for Trixie 13, Forky and Sid. Upgrading to Trixie is the supported route.

Do I need Spotify Premium?

To play music, yes. A free account can sign in, browse and search, but Spotify only permits playback through Fastpotify, whether on this computer or on another device, with Premium.

How do I update Fastpotify to the latest version?

Run sudo apt update && sudo apt upgrade. Package-managed installations are updated by their package manager, so there is no separate updater to remember.

How do I install Fastpotify on Ubuntu?

Exactly the same way; lsb_release -sc simply resolves to a different codename. There is a companion guide with the Ubuntu specifics: How to install Fastpotify on Ubuntu.

Which Debian releases are supported?

Trixie 13, Forky and Sid, on amd64 and arm64. Because the repository line is built from lsb_release -sc, the matching suite is selected for you.

Resources


Disclaimer: The deb.griffo.io repository is an unofficial community project and is not affiliated with the official Debian or Ubuntu projects, or with the upstream Fastpotify project. Fastpotify is an independent project and is not affiliated with Spotify; Spotify is a trademark of Spotify AB.