ifdef::context[:parent-context: {context}]
:context: installing-spotify

= Installing Spotify on Fedora

include::{partialsdir}/3rdparty-message.adoc[]

link:https://www.spotify.com/[Spotify] is a cross-platform proprietary music streaming service.
Spotify is a freemium service, with advertisements which can be removed by purchasing a subscription.
Although Spotify is not officially supported on Fedora, it can be installed on Fedora in a number of ways:

. Using the third-party https://rpmfusion.org/[RPM Fusion] repositories.
. Using a Flatpak hosted by https://flathub.org[Flathub].

[install-spotify-using-rpmfusion]
== Using the RPM Fusion repository

// UNVERIFIED

. xref:setup_rpmfusion.adoc[Enable the RPMFusion repositories].
. Install the `lpf-spotify-client` package:
+
----
sudo dnf install lpf-spotify-client
----

. Install Spotify:
.. Click the "lpf-spotify-client" icon in the application list.
.. or use the following command in a terminal:
+
----
lpf update
----


[install-spotify-using-flatpak]
== Installing Spotify using Flatpak

// VERIFIED: on 201901319 by @ankursinha

To install Spotify using link:https://flatpak.org/index.html[Flatpak]:

. Install Flatpak using DNF:
+
----
sudo dnf install -y flatpak
----

. Enable the Flathub remote:
+
----
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
----

. Install Spotify:
.. Using Gnome Software:
... Head to the link:https://flathub.org/apps/details/com.spotify.Client[Spotify page on Flathub].
... Click "install", and choose to open the file using Gnome Software.
... Click "install" in Gnome Software.
... Click "launch" to run Spotify once installed.

.. Using the command line:
+
----
sudo flatpak install flathub com.spotify.Client
----

. Run Spotify:
.. Click on the Spotify icon in the applications list,
.. or use the following command in the terminal:
+
----
flatpak run com.spotify.Client
----

== References

. https://github.com/rpmfusion/lpf-spotify-client
. https://flathub.org/apps/details/com.spotify.Client

ifdef::parent-context[:context: {parent-context}]
ifndef::parent-context[:!context:]
