How to Install Spotify on Fedora (Flatpak or RPM)

Install Spotify on Fedora using Flatpak for sandboxed updates or RPM Fusion for native system integration.

You cannot find Spotify in the default repos

You just finished setting up your new Fedora Workstation. The desktop is polished, the terminal is ready, and you want to stream music. You search the application menu for Spotify and find nothing. You try sudo dnf install spotify and get a repository not found error. The official Fedora repos deliberately exclude proprietary streaming clients. You need to bridge that gap without breaking your system packages.

What is actually happening

Fedora ships with a strict policy around proprietary software. The base repositories only contain free and open-source packages. Spotify falls outside that boundary. That means you have to pull it from an external source. You have two realistic paths. Flatpak wraps the application in a sandbox with its own dependencies. RPM Fusion packages the official Spotify client as a native RPM that integrates directly with your system libraries. Both work. They solve the same problem with different trade-offs.

Flatpak isolates the application from your host system. It carries its own runtime libraries. The sandbox blocks direct access to system directories and hardware unless you explicitly grant permissions. RPM Fusion builds the client against your host libraries. It behaves like a native Fedora package. It updates alongside your system when you run dnf upgrade --refresh. The trade-off is that RPM packages can occasionally conflict with system library versions during major Fedora releases.

Think of Flatpak like a shipping container. Everything the application needs travels inside it. The host system only provides the dock. Think of RPM Fusion like a custom engine drop-in. It bolts directly into your existing chassis. It uses your existing fuel lines and wiring. It runs faster and integrates better, but you have to make sure the engine block matches your chassis specifications.

Install Spotify via Flatpak

Flatpak is the recommended path for most desktop users. It avoids dependency conflicts and keeps your base system clean. You will need the Flatpak runtime installed. Fedora Workstation includes it by default. If you are on a minimal Server install, install it first with sudo dnf install flatpak.

Here is how to add the Flathub repository and pull the Spotify client.

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # Register Flathub as a trusted source for sandboxed apps
flatpak install flathub com.spotify.Client # Download the Spotify runtime and application bundle

The first command registers Flathub. The --if-not-exists flag prevents duplicate entries if you already added it. The second command pulls the com.spotify.Client bundle. Flatpak will automatically fetch the required Freedesktop runtime if it is missing. You will see a prompt asking you to confirm the installation. Press y to proceed.

Once the download finishes, launch the application from your desktop menu. You can also start it from the terminal to see real-time output.

flatpak run com.spotify.Client # Execute the sandboxed Spotify binary

Running it from the terminal shows standard output and error logs. This helps if the window fails to appear. Flatpak applications run in an isolated environment. The sandbox blocks direct access to your home directory and hardware devices by default. Spotify requests access to your music folder and audio devices during first launch. Grant the permissions when the prompt appears.

Flatpak maintains its own update cycle. Run flatpak update to pull new versions. This command is separate from dnf upgrade. They do not share package databases. Keep both in your weekly maintenance routine. dnf upgrade --refresh is the normal weekly maintenance command. flatpak update handles sandboxed applications. They are different commands. Don't conflate them.

Install Spotify via RPM Fusion

RPM Fusion provides a native package that integrates with your system. This path requires enabling external repositories. Fedora does not include RPM Fusion by default. You must add both the free and nonfree repositories. The nonfree repository contains the Spotify package because it includes proprietary binaries and assets.

Here is how to enable the repositories and install the client.

sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm # Add both RPM Fusion repositories to your DNF configuration
sudo dnf install spotify # Pull the native Spotify package and resolve host dependencies

The first command downloads and installs the repository metadata packages. The $(rpm -E %fedora) variable expands to your current release number. This ensures the correct repository configuration for your Fedora version. The second command installs the client. DNF will resolve dependencies against your system libraries. You will see a GPG key import prompt. Verify the fingerprint matches the RPM Fusion documentation and press y.

Launch the application using the standard desktop entry or the terminal command.

spotify & # Start the native client in the background

The native package integrates with PulseAudio or PipeWire directly. It does not require sandbox permissions. It reads your system theme and follows your desktop environment settings. The package updates automatically when you run your regular system upgrade.

Verify it worked

Confirmation depends on which package format you chose. Flatpak tracks installations separately from DNF. RPM packages register with the system package manager.

Check Flatpak installations with this command.

flatpak list --app # Display all installed Flatpak applications

Look for com.spotify.Client in the output. The version column shows the current release. If it appears, the sandbox is configured correctly.

Check RPM installations with this command.

rpm -qi spotify # Query the installed Spotify package metadata

The output shows the version, release, installation date, and repository source. If the command returns package spotify is not installed, the DNF transaction failed silently or was interrupted.

Run journalctl -xeu spotify.service if you installed the RPM and the system service exists. Most desktop users run the client as a user application. Use journalctl -xe to check recent system logs if the application crashes on launch. The x flag adds explanatory text and the e flag jumps to the end. Most sysadmins type journalctl -xeu <unit> muscle-memory style.

Common pitfalls and what the error looks like

Audio routing is the most frequent failure point. Flatpak sandboxes block direct access to audio servers. If you hear silence, check the sandbox permissions. Run flatpak override --user --talk-name=org.freedesktop.portal.Audio com.spotify.Client to grant audio access. The native RPM package usually works out of the box. It relies on GStreamer plugins for audio playback.

You will see a missing codec error if GStreamer plugins are absent.

ERROR: Could not load plugin: libgstpulseaudio.so
WARNING: No audio output device found

Install the missing plugins with sudo dnf install gstreamer1-plugins-good gstreamer1-plugins-bad-free. The RPM Fusion package lists these as weak dependencies. They do not install automatically on minimal setups.

Dependency conflicts appear during major Fedora upgrades. The RPM package may refuse to update if a system library version jumps ahead. DNF will print a transaction test error.

Error: Transaction test error: package spotify-1.2.x conflicts with gstreamer1-libav >= 1.24

Do not force the installation. Remove the RPM package temporarily, run the system upgrade, then reinstall it. Flatpak avoids this entirely because it carries its own libraries.

Configuration files live in /etc/ for system-wide settings and ~/.config/ for user overrides. Never edit files in /usr/lib/. Those ship with the package and get overwritten on update. Edit /etc/ or user directories. Manual file edits drift, snapshots stay.

If the application freezes on startup, check your hardware acceleration settings. Spotify uses GPU acceleration for rendering the interface. Older integrated graphics or broken Wayland compositors can cause hangs. Launch with SPOTIFY_DISABLE_HWA=1 spotify to force software rendering. If the freeze stops, file a bug report against your compositor, not Spotify.

When to use this vs alternatives

Use Flatpak when you want a known-good base image you can always roll back to. Use RPM Fusion when you need native desktop integration and direct access to system libraries. Use the official Spotify Web Player when you refuse to install third-party repositories or sandboxed runtimes. Stay on the upstream Workstation defaults if you only deviate from the defaults occasionally.

Where to go next