Spotify client

spotify-client

Latest Spotify client re-packaged from the Ubuntu packages for supported Fedora and RHEL/CentOS distributions.

Supported distributions:

  • Fedora – x86_64
  • RHEL/CentOS – x86_64

This repository does not require any additional repository be enabled on your system.

Table of Contents

Package information

This package tries to comply as maximum to the Fedora Packaging Guidelines; this means the packages has debuginfo packages, default Fedora’s GCC compile time options (where possible) and standard locations for binaries, data and docs.

The provided client is binary only and compiled for Ubuntu, so the Fedora package de-assembles the original Ubuntu package/Snap and moves all files in the appropriate places. As such, the spotify binary has a RUNPATH of its origin folder. Depending on the distribution, it requires Ubuntu compatible libraries compiled with minimum options (no external dependencies) for local file playback and conversion. Due to this, I’ve removed the RUNPATH from the binary, put all the libraries in its private folder and made sure that only the spotify binary can access them.

$ cd /usr/lib64/spotify-client
$ ls -l lib*
lrwxrwxrwx. 1 root root        27 Mar  5 18:33 libavcodec-ffmpeg.so.56 -> /usr/lib64/libavcodec.so.56
lrwxrwxrwx. 1 root root        23 Oct  5  2017 libavcodec.so.53 -> libavcodec.so.53.61.100
-rwxr-xr-x. 1 root root   6990472 Oct  5  2017 libavcodec.so.53.61.100
lrwxrwxrwx. 1 root root        28 Mar  5 18:34 libavformat-ffmpeg.so.56 -> /usr/lib64/libavformat.so.56
lrwxrwxrwx. 1 root root        24 Oct  5  2017 libavformat.so.53 -> libavformat.so.53.32.100
-rwxr-xr-x. 1 root root   1194888 Oct  5  2017 libavformat.so.53.32.100
lrwxrwxrwx. 1 root root        22 Oct  5  2017 libavutil.so.51 -> libavutil.so.51.35.100
-rwxr-xr-x. 1 root root    136328 Oct  5  2017 libavutil.so.51.35.100
-rwxr-xr-x. 1 root root 127184368 Mar 23 19:16 libcef.so
lrwxrwxrwx. 1 root root        23 Apr 23 16:23 libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.5.0
-rwxr-xr-x. 1 root root    591288 Apr 23 16:23 libcurl-gnutls.so.4.5.0
-rwxr-xr-x. 1 root root    372560 Mar 23 19:16 libEGL.so
-rwxr-xr-x. 1 root root   5046304 Mar 23 19:16 libGLESv2.so
lrwxrwxrwx. 1 root root        23 Oct  5  2017 libpostproc.so.52 -> libpostproc.so.52.0.100
-rwxr-xr-x. 1 root root    114104 Oct  5  2017 libpostproc.so.52.0.100
lrwxrwxrwx. 1 root root        24 Oct  5  2017 libswresample.so.0 -> libswresample.so.0.6.100
-rwxr-xr-x. 1 root root     40432 Oct  5  2017 libswresample.so.0.6.100
-rwxr-xr-x. 1 root root    444472 Apr 23 16:25 libwidevinecdmadapter.so
$ chrpath -l spotify
spotify: no rpath or runpath tag found.

Installation

To install the repository on a supported Fedora distribution, run as root the following command:

dnf config-manager --add-repo=https://negativo17.org/repos/fedora-spotify.repo

To do the same on CentOS/RHEL:

dnf config-manager --add-repo=https://negativo17.org/repos/epel-spotify.repo

Then, to install the client and its data files, perform the following command:

# yum -y install spotify-client

If your system already has an ffmpeg package, that would be used instead of the compatibility package spotify-ffmpeg. FFmpeg libraries are required for playback of local files.

Bugs

The address for contacting me is in the package’s changelog.

396 thoughts to “Spotify client”

  1. Last metadata expiration check: 0:01:52 ago on Sun 06 Oct 2024 07:27:42 AM IST.
    Error:
    Problem: conflicting requests
    – nothing provides spotify-curl(x86-64) needed by spotify-client-1:1.2.45.454.gc16ec9f6-1.fc40.x86_64 from fedora-spotify
    (try to add ‘–skip-broken’ to skip uninstallable packages)

    1. It’s all fixed; now also Ayatana packages are in Fedora. Just do:


      dnf remove libayatana*
      dnf install spotify-client

  2. I had this working on my Fedora 40 install but had a package conflict.There was also a conflict with a package libayatana-appindicator in the fedora-spotify repository (with the rpm fusion version).

    I uninstalled spotify-client and disabled the repository. After this and reenabling the repository, I cannot install spotify-client anymore, because of a missing spotify-curl dependency. I can confirm that if I manually download the spotify-client rpm from the repository and try to install it, the rpm still wants spotify-curl, and spotify-curl is not in the repository at all. I’m mystified as how it worked before – perhaps an old spotify-curl was still around which caused things to work? I can’t find the conflicting libayatana-appindicator anymore either in the spotify repository, so the whole situation is rather mysterious altogether.

    1. It’s all fixed now that Ayatana packages are in Fedora. Just do:

      dnf remove libayatana*
      dnf install spotify-client

  3. Hello. Can you create a repository for Mageia? Also uses dnf. I managed to add the repository for RHEL/CentOS – x86_64, however, it gives an error:

    [michael@ARQ-TI03 ~]$ sudo dnf install spotify-client
    Última verificação de metadados: 0:04:30 atrás em seg 01 jul 2024 17:04:54.
    Erro:
    Problema: solicitações conflitantes
    – nothing provides libXScrnSaver(x86-64) needed by spotify-client-1:1.2.40.599.g606b7f29-1.el9.x86_64 from epel-spotify
    (tente adicionar ‘–skip-broken’ para pular pacotes desinstaláveis)
    [michael@ARQ-TI03 ~]$ sudo dnf install libxscrnsaver
    Última verificação de metadados: 0:04:36 atrás em seg 01 jul 2024 17:04:54.
    O pacote lib64xscrnsaver1-1.2.4-1.mga9.x86_64 já está instalado.
    O pacote libxscrnsaver1-1.2.4-1.mga9.i586 já está instalado.
    Dependências resolvidas.
    Nada para fazer.
    Concluído!

  4. For those experiencing graphical glitches on Fedora with the latest version of spotify-client, starting the application with the following command line switch appears to solve the issue:

    spotify –disable-gpu-compositing

  5. Hi. Thank you for making your repo available – really love it. I have a problem though with spotify-ripper. Since upgrade to Fedora 35 I get a “nothing provides python3.10dist(schedule) >= 0.3.1 which is needed by spotify-ripper-2.18-1.fc35.noarch” when trying to install. Do you have an idea how to fix that? thx

    1. libspotify support has been disabled by Spotify itself, so spotify-ripper does not work anymore. Time to look for alternatives.

  6. yum add repo command is wrong. Correct is:
    yum config-manager –add-repo=https://negativo17.org/repos/epel-spotify.repo

  7. Hi! just to let you know that on Fedora 33, Spotify displays and plays ads, modifiing the repo to:
    baseurl=https://negativo17.org/repos/spotify/fedora-32/$basearch/

    and this version remove the ads again!

    BTW, Great work here Thanks!

  8. I’m on Fedora 32 kernel 5.8.15-201 and the app keeps crashing for me. Initially it brings up the login screen but after that it just crashes. No error messages or nothing. I’ve tried uninstalling it and reinstalling it with no luck. Is there any logs I can look at for trying to determine why it’s crashing? The only time the app stays open fully is when I go to log in after a fresh install of the app, but after that it loads for like 2 seconds then crashes. I was wondering if anyone else is having this issue?

      1. First, thanks for your great work negativo17

        I’ve same issue, even if I wip out spotity config. I’m on Fedora 33 kernel 5.8.18-300

  9. Errors during downloading metadata for repository ‘fedora-spotify’:
    – Curl error (60): SSL peer certificate or SSH remote key was not OK for https://negativo17.org/repos/spotify/fedora-32/x86_64/repodata/repomd.xml [SSL certificate problem: certificate has expired]
    Error: Failed to download metadata for repo ‘fedora-spotify’: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
    negativo17 – Steam 0.0 B/s | 0 B 00:07

    Certificate seems to be expired.

    1. After spending a day on the phone with GoDaddy, they informed me that they have an issue with the shared hosting and they can not update certificates on the various instances. According to them they had this issue on the past 3 weeks!

      Of course nobody bothered to tell me and now the certificate is expired and I have no way of fixing it. I will move everything to a separate hosting provider as soon as I can, starting from the repositories.

      Of course now it will be a dedicated box, so the cost will not be the same. Any donation is of course accepted.

  10. Something I don’t get: if this is just the Ubuntu client repackaged, then why don’t I get any ads in this client, while getting ads in Ubuntu? I wish this behaviour could be ported to Ubuntu!

        1. After spending a day on the phone with GoDaddy, they informed me that they have an issue with the shared hosting and they can not update certificates on the various instances. According to them they had this issue on the past 3 weeks!

          Of course nobody bothered to tell me and now the certificate is expired and I have no way of fixing it. I will move everything to a separate hosting provider as soon as I can, starting from the repositories.

          Of course now it will be a dedicated box, so the cost will not be the same. Any donation is of course accepted.

  11. The Feb 13th version broke my setup (behind a rather picky corporate firewall). “No internet connection detected. … (error code: 4)” The previous version worked fine with my proxy, but the current one does not.

    Any way to get back to the older version?

    1. Comparing to the old outdated version the current one allows you to enter proxy settings directly from the login screen. Have you tried cleaning the client data (~/.config/spotify) and logging in again?

  12. I see the last official update at Spotify is 1.1.10.546 release 3 months ago while other platforms have had releases since. Would anyone know if Spotify are still updating the Linux client?

  13. Hi,

    I am on Centos 7.6 and had no problem setting up this client on my system.

    You need to enable epel’s repo via yum-config-mgr and then run this yum stream:

    yum -v install libidn2-devel libidn2
    yum -v install libnghttp2 libnghttp2-devel
    yum -v install search libpsl libpsl-devel
    yum -v install spotify-client libatomic spotify-curl spotify-ffmpeg spotify-openssl

    Cheers,
    Henry

  14. The new version seems to be having dependency issues on an updated CentOS 7.6 (worked flawlessly up until now):

    Package: 1:spotify-client-1.0.96.181.gf6bc1b6b-1.el7.x86_64 (epel-spotify)
    Requires: libc.so.6(GLIBC_2.18)(64bit)

  15. could we obsolete spotify-client-data in the new version. I have users with the old version installed that needed spotify-client-data from this repo, and now if you try to update spotify-client, it can not remove the old client, as spotify-client-data still needs the old client (this is on RHEL 7)

    Thanks Oliver

    1. Will do in the next update. Thanks for reporting. Please use github for opening an issue in the repository next time, so I don’t risk losing track of it.

    2. Hello, I’ve checked, the first commit of the spotify-client package was already obsoleting the spotify-client-data package:

      https://github.com/negativo17/spotify-client/commit/6b9e37eea4cd576b52c2dfea4e7b5ee3b9c434fd#diff-25169349e486b1f111359d272c45b087R27

      This was in April 2016 (!). After this, I removed the Obsolete/Provide statement in February 2017 (!), allowing plenty of time for people to update:

      https://github.com/negativo17/spotify-client/commit/4feab04c22590079bd5ca3582556905dd023e421#diff-25169349e486b1f111359d272c45b087L30

      I’m sorry but you need to remove spotify-client-data manually before updating, I’m not adding this again. You can remove spotify-client* and reinstall it, or force remove of spotify-client-data and then update with yum.

      1. I was looking for a link to github and could not find one, therefor I posted here. Thanks for the feedback I will repackage your rpm with the Obsolete included, as I have a bigger group of users that for several reasons might have still the older rpm, and they do not have admin rights on their machines (or the knowledge) to manually re-install the package.

  16. I’ve just upgraded spotify on my Fedora 28 and now I’ve got issues to connect. I’m behind a proxy and of course I’ve added the proxy information.
    Is there a way to download the older release?

  17. i’ve just upgraded to the latest version for Fedora 27 1.0.88.345 and the friends list wouldn’t load anymore. any chance i can downgrade to the previous version where this worked fine?

  18. Hello, is there any chance 32 bit (i686) arch? I’ve Fedora 27 32 bit on an old laptop with the latest fc26 1.0.72 i686 spotify-client installed. Is the 32 bit arch permanently dropped or just in Fedora?

  19. Hello, Is there any chance to i686 build? I’ve Fedora 27 32bit on an old laptop or Spotify dropped 32bit arch permanently?

  20. The spotify-client seems to be available only for new Fedora versions: 27 & 28. Do you have the rpms compatible with older versions (e.g Fedora 22). ?

  21. Looks like for a Fresh Fedora 28 install, I needed to install libXScrnSaver and libXScrnSaver-devel in order to get the spotify client working. Thanks again for the repo!

    1. Really? Do you have any message/log to show? I can add those to the dependencies if needed, but for sure the binaries are not linked to them.

      1. Hi Slaanesh, I have the same problem on Red Hat Enterprise Linux 7.5. When trying to run spotify, this is the error message:

        /usr/lib64/spotify-client/spotify: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory

        It works after installing libXScrnSaver

  22. Hi, Thank you ,great work!

    I’ve been using this client for several years. But for Fedora 28 I can’t login… If I click on the FB login button nothing happens, and if I enter my credentials it says that my username or password are wrong. I’m not behind a proxy, i’ve tried on wayland and Xorg. Maybe there’s a log a I can check?

    Thanks

  23. Running Fedora 28
    Install and works great, but cant get the system panel menu, anyone else seeing any similar issues ?

    1. Hello, what do you mean by “system panel menu”?
      Are you using Wayland? Can you try logging in with a normal X session and see if it works? Unfortunately the binary does not yet support Wayland.

  24. Hi, thank you for the amazing work you did! How about the possibility to install it without root permission? I tried unpacking the rpm but it seems quite complicated to make everything work easily.

    1. Well it installs like any other package, with root permissions because it is in /usr but you execute it as your user. If you just want a tarball, just unpack the RPM or the original DEB file in one folder and put in there also the dependent libraries the other spotify-* packages, which are different per distribution.

Leave a Reply