Help Wizard

Step 1

NEXT STEP

[Linux] Fedora RPM package for F17-F19

Solved!

[Linux] Fedora RPM package for F17-F19

Current method to install the spotify rpm is based on the rpmfusion lpf-spotify-client package. Basically, this automates the process of downloading, building and installing a spotity rpm based on the official Debian packages.

 

EDIT: Bug reported (page 19), temporary work-around published.

 

EDIT: New solution based on the rpmfusion lpf-spotify-client package. Old  method deprecated but still available.

 

EDIT: updated for new upstream release: 0.9.4.183.g644e24e.428-2

 

EDIT: Solution updated for 0.9.1.55.

 

EDIT: Downgrading procedure to 0.8.4 published

 

EDIT: Update header to include F19

 

EDIT: Solution updated for 0.9.0.133

 

EDIT: updating link

 

EDIT: new solution for 0.8.8 published.

Reply
223 Replies

I was getting the skin.xml error as well. It looks like spotify no longer uses a symbolic link for the data directory in /usr/lib64/spotify-client. So I recreated it manually as a symbolic link:

 

[root@localhost ~]# yum install ~vespa/rpmbuild/RPMS/x86_64/spotify-client-0.9.1.55.gbdd3b79.203-1.fc19.x86_64.rpm 
[root@localhost ~]# rm /usr/lib64/spotify-client/Data
rm: remove symbolic link '/usr/lib64/spotify-client/Data'? y
[root@localhost ~]# yum upgrade ~vespa/rpmbuild/RPMS/x86_64/spotify-client-0.9.4.183.g644e24e.428-3.fc19.x86_64.rpm 
[root@localhost ~]# cp /usr/lib64/spotify-client/Data/SpotifyHelper /usr/share/spotify-client/Data/
[root@localhost ~]# cd /usr/lib64/spotify-client/
[root@localhost spotify-client]# rm -Rf Data
[root@localhost spotify-client]# ln -s ../../share/spotify-client/Data Data

1) I made sure to have the last version of spotify installed

2) I removed the symbolic link to the data directory or else the upgrade installation would fail with a conflict warning

3) I upgraded spotify to the current version

4) I copied the file /usr/lib64/spotify-client/Data/SpotifyHelper to the location: /usr/share/spotify-client/Data/

5) I removed the physical directory at /usr/lib64/spotify-client/Data

6) I created a symbolic link to /usr/share/spotify-client/Data

 

After that I was able to launch spotify without an error. I hope this helps!

Hm... we need som more input:

  • What does "which spotify" show?
  • ls -lR /usr/lib[64]/spotify-client?
  • ldd /usr/lib[654]/spootify-client

To keep the thread readable, it would be nice if you could use pastebin.com or similar to post a link.

 

If I understand the situation correct (which isn't sure, I havn't any sources) the message means that the resources under /usr/lib[64]/spotify-client/Data is not the version the spotify binary expects. So, this is indeed odd if there has been no other spotify installation on that machine...


@Vespa wrote:

I was getting the skin.xml error as well. It looks like spotify no longer uses a symbolic link for the data directory in /usr/lib64/spotify-client. So I recreated it manually as a symbolic link:

 

[root@localhost ~]# yum install ~vespa/rpmbuild/RPMS/x86_64/spotify-client-0.9.1.55.gbdd3b79.203-1.fc19.x86_64.rpm 

[root@localhost spotify-client]# ln -s ../../share/spotify-client/Data Data

 


Note: current release is

 

The upgrade to spotify-client-0.9.4.183.g644e24e.428-3.fc19.x86_64.rpm worked for me after changing the data directory. It may not be necessary to have the previous release installed. This is just how I did it. I did not test it as a fresh installation, but it is very possible that you don't need the previous version.

Marked as solution


@Vespa wrote:

I was getting the skin.xml error as well. It looks like spotify no longer uses a symbolic link for the data directory in /usr/lib64/spotify-client. So I recreated it manually as a symbolic link:


 

[root@localhost ~]# cp /usr/lib64/spotify-client/Data/SpotifyHelper /usr/share/spotify-client/Data/
[root@localhost ~]# cd /usr/lib64/spotify-client/
[root@localhost spotify-client]# rm -Rf Data
[root@localhost spotify-client]# ln -s ../../share/spotify-client/Data Data

This fixed it, thanks! 

Hi again!

Thanks a lot of for your help, here is the output from those commands (sorry about the big copy/paste on my previous post):

 

· which spotify ... http://pastebin.com/Mzp1FmYs

· ls -lR /usr/lib64/spotify-client ... http://pastebin.com/F6uminbJ

· ldd /usr/lib64/spotify-client/spotify ... http://pastebin.com/nn9US3ud

 

I have not applied the "link vs directory" workaround yet.

 

Keep the nice work with this post!

You are 100% correct

I stand Derp! 🙂

Marked as solution

This update is, well, less successful.

 

Anyway, I have pushed a new version 0.9.4.183.g644e24e.428-4 which seems to fix at least some of these problems. Same links and procedure.

 

You might run into conflict problems when trying to upgrade. If so, just remove the old package before installing the new. This is an old rpm issue when a directory is replaced with a symlink.

Fantastic work as always leamas. I just tested it on a clean installation of FC20 x86_64 and it installed without error. Cheers!

Well, a week to get the update correct is certainly fantastic. Not fantastic good, though. That said: thanks!

 

Hopefully back on track with a reasonably usable rpm. As always, I appreciate feedback whether there are problems or not. Don't forget to mention platform (f18,f19..., x86_64/i386). And I'm not the only one listening here... A simple "works for me" is valuable also for other users hanging around. Which actually are a few, this thread has some readers.

Hi again,

Works perfectly now!

 

huge thanks leamas!!

Regards

Thank you very mutch 🙂

Install went perfectly on Fedora 19 x86_64.

 

So far I have not had any issues with usability either. This seems to be by far the best install method so far!

Spotify Linux Preview is still buggy as hell, can't even make it to skip radio songs.

Literally just finished the install, and I can skip radio songs just fine. Did you use the install instructions provided here: http://community.spotify.com/t5/Help-Desktop-Linux-Mac-and/Linux-Fedora-RPM-package-for-F17-F19/m-p/...

 

Apps work. I had at one point an issue with dragging songs to the playlist, but that seems to be fixed with this latest version. 

I used the solution, it installed, but I have issues with radio.

I am going through the installation steps and everything worked great up to this stage:

 

# env QA_RPATHS=$((0x10|0x08)) rpmbuild -bb spotify-client.spec
error: File /root/rpmbuild/SOURCES/spotify-make-0.9.4.183.g644e24e.428-cb564f2.tar.gz: No such file or directory

😞 😞 would appreciate some tip on how did you guys resolve that?

Ahhhhh.  I was running spotify fine with my last laptop.  Just built a clean fedora 19 install and tried to build spotify per the directions.  Now I am getting:

 

QGtkStyle was unable to detect the current GTK+ theme.
Cannot mix incompatible Qt library (version 0x40805) with this library (version 0x40803)
/usr/bin/spotify: line 34: 14148 Aborted                 (core dumped) LD_LIBRARY_PATH=$( dirname $spotify ) $spotify $@

when running spotify.  I have tried everything I can think of and searched as much as I can and cannot find a solution.

 

Thanks

Hm. I just re-installed my spotify on an updated F19 host and worked OK for me. So, something is different for you (?) The error message seems to indicate that there are two different Qt runtime versions loaded, but the details are hard to grasp. Some questions:

  • Is your "clean F19 host" updated or just fresh from the installation image?
  • What's printed by the command 'rpm -q qt'?
  • What happens if you try to walk-around the problem using the installer (make  a user install).?

Fedora 19 from live USB then updated.

 

[bpierce@benslenovo ~]$ rpm -q qt
qt-4.8.5-10.fc19.x86_64

Same issue after removing spotify rpm, and installing using installer:

 

[bpierce@benslenovo spotify-make]$ spotify
QGtkStyle was unable to detect the current GTK+ theme.
Cannot mix incompatible Qt library (version 0x40805) with this library (version 0x40803)
/usr/local/bin/spotify: line 34: 11261 Aborted                 (core dumped) LD_LIBRARY_PATH=$( dirname $spotify ) $spotify $@

output of building and installing the installer follows:

 

[bpierce@benslenovo spotify-make]$ ./configure
Checking build and support dependencies
    ldconfig:... ldconfig (GNU libc) 2.17 (ok)
    python: Python 2.7.5 (ok)
    wget: GNU Wget 1.14 built on linux-gnu. (ok)
    zenity: ...(ok)
    ar: GNU ar version 2.23.52.0.1-9.fc19 20130226 (ok)
    lsb_release: trying -i: Distributor ID: Fedora (ok)
    make: GNU Make 3.82 (ok)
    install: install (GNU coreutils) 8.21 (ok)
    desktop-file-validate: (ok)
    gtk-update-icon-cache: (ok)
    update-desktop-database: (ok)
Determining distro:... Fedora
Determining version:... 0.9.4.183.g644e24e.428
Determining arch:... amd64
Determine .deb file...spotify-client_0.9.4.183.g644e24e.428-1_amd64.deb
Determine permissions for shared libs (SO_PERMS)...755
Configuration paths:
      PATH:  /usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/bpierce/.local/bin:/home/bpierce/bin
    prefix:  /usr/local
    bindir:  /usr/local/bin
    libdir:  /usr/local/lib
    datadir: /usr/local/share
    mandir:  /usr/local/share/man
Writing Makefile
Writing spotify.desktop
Writing spotify.bash
[bpierce@benslenovo spotify-make]$ make

Plain 'make' doesn't do anything. Targets:
 - download:   Download all sources
 - install:    Install, possibly using DESTDIR to define location.
 - register:   Notify system about new desktop icons etc.
 - uninstall:  Remove everything installed.

[bpierce@benslenovo spotify-make]$ make download
wget -Nq -O spotify-client_0.9.4.183.g644e24e.428-1_amd64.deb http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_0.9.4.183.g644e24e.428-1_amd64....
[bpierce@benslenovo spotify-make]$ su -c "make install"
Password:
ar x spotify-client_0.9.4.183.g644e24e.428-1_amd64.deb
tar xzf data.tar.gz
cp -ar ./opt/spotify/spotify-client/*  /usr/local/share/spotify-client
mv /usr/local/share/spotify-client/Data/libcef.so /usr/local/lib/spotify-client
mv /usr/local/share/spotify-client/Data/SpotifyHelper /usr/local/lib/spotify-client/Data
mv /usr/local/share/spotify-client/spotify /usr/local/lib/spotify-client
cd /usr/local/lib/spotify-client/Data; \
    for f in /usr/local/share/spotify-client/Data/*; do \
        ln -s ../../../share/spotify-client/Data/$(basename $f) . ; \
    done
ln -s ../../share/spotify-client/licenses.xhtml /usr/local/lib/spotify-client
[ -n "" ] && cp -a  /usr/local/share/spotify-client || :
cp -a fedora/amd64/*.so.* /usr/local/lib/spotify-client
INFO: resolving libnss3.so.1d as " /lib64/libnss3.so"
INFO: resolving libnssutil3.so.1d as " /lib64/libnssutil3.so"
INFO: resolving libsmime3.so.1d as " /lib64/libsmime3.so"
INFO: resolving libplc4.so.0d as " /lib64/libplc4.so"
INFO: resolving libnspr4.so.0d as " /lib64/libnspr4.so"
install -m 755 -pD spotify.bash /usr/local/bin/spotify
install -m 644 -pD spotify.1 /usr/local/share/man/man1/spotify.1
Installing icons in /usr/local/share/icons/hicolor
[ -d /usr/local/share/applications ] ||                      \
    mkdir  /usr/local/share/applications
desktop-file-install --dir /usr/local/share/applications     \
    spotify.desktop
[ "Fedora" = 'Ubuntu' ] && chmod 755                            \
    /usr/local/share/applications/spotify.desktop  || :
chmod 755 \
    $( find /usr/local/lib/spotify-client -name '*.so*' -writable)
cp Makefile /usr/local/share/spotify-client
cp README.md  /usr/local/share/spotify-client
[bpierce@benslenovo spotify-make]$ make

Plain 'make' doesn't do anything. Targets:
 - download:   Download all sources
 - install:    Install, possibly using DESTDIR to define location.
 - register:   Notify system about new desktop icons etc.
 - uninstall:  Remove everything installed.

[bpierce@benslenovo spotify-make]$ su -c "make register"
Password:
gtk-update-icon-cache --ignore-theme-index \
    /usr/local/share/icons/hicolor
gtk-update-icon-cache: Cache file created successfully.
desktop-file-validate \
    /usr/local/share/applications/spotify.desktop
update-desktop-database  /usr/local/share/applications
[bpierce@benslenovo spotify-make]$ spotify
QGtkStyle was unable to detect the current GTK+ theme.
Cannot mix incompatible Qt library (version 0x40805) with this library (version 0x40803)
/usr/local/bin/spotify: line 34: 11261 Aborted                 (core dumped) LD_LIBRARY_PATH=$( dirname $spotify ) $spotify $@

Suggested posts