Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 487520 - media-sound/spotify-0.9.4.183 version bump
Summary: media-sound/spotify-0.9.4.183 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Matthew Thode ( prometheanfire )
URL:
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2013-10-10 13:31 UTC by Lukas Polacek
Modified: 2013-10-13 01:52 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Ebuild v1 (spotify-0.9.4.183.ebuild,4.95 KB, text/plain)
2013-10-10 13:31 UTC, Lukas Polacek
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lukas Polacek 2013-10-10 13:31:06 UTC
New version of Spotify is available.

Some comments:
1. Local playback only works with libavcodec.so.53, which means using old ffmpeg. You can have both old ffmpeg and new 1.2 installed.
2. There is a new executable SpotifyHelper and in the ebuild I needed to do some search and replace inside that one as well.
3. The security problem from #474010 is gone.

I am no expert in making ebuilds, so someone please check it. 

Reproducible: Always
Comment 1 Lukas Polacek 2013-10-10 13:31:54 UTC
Created attachment 360582 [details]
Ebuild v1
Comment 2 Lukas Polacek 2013-10-10 13:51:09 UTC
2 more things about the ebuild.

I had to fix a libudev symlink, we now have libudev.so.1 but the application is linked with libudev.so.0.

It's only written for amd64, partly because of libudev.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2013-10-10 13:55:43 UTC
Comment on attachment 360582 [details]
Ebuild v1

--- spotify-0.9.1.55.ebuild     2013-10-02 06:52:50.385183502 +0200
+++ -   2013-10-10 15:55:29.517088319 +0200
@@ -1,23 +1,20 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/spotify/spotify-0.9.1.55.ebuild,v 1.2 2013/10/01 16:54:32 prometheanfire Exp $
 EAPI=4
-inherit eutils fdo-mime gnome2-utils pax-utils unpacker
+inherit eutils pax-utils unpacker
 DESCRIPTION="Spotify is a social music platform"
 HOMEPAGE="https://www.spotify.com/ch-de/download/previews/"
-MY_PV="${PV}.gbdd3b79.203-1"
+MY_PV="${PV}.g644e24e.428-1"
 MY_P="${PN}-client_${MY_PV}"
 SRC_BASE="http://repository.spotify.com/pool/non-free/${PN:0:1}/${PN}/"
 SRC_URI="
-       x86?   ( ${SRC_BASE}${MY_P}_i386.deb )
        amd64? ( ${SRC_BASE}${MY_P}_amd64.deb )
        "
 LICENSE="Spotify"
 SLOT="0"
-#amd64 and x86 keywords removed due to security concerns, see bug 474010
-KEYWORDS=""
+KEYWORDS="~amd64"
 IUSE="gnome pax_kernel pulseaudio"
 RESTRICT="mirror strip"
@@ -57,8 +54,10 @@
                dev-libs/nss
                dev-libs/glib:2
                net-print/cups
+               <media-video/ffmpeg-1.0
                pulseaudio? ( >=media-sound/pulseaudio-0.9.21 )
-               gnome? ( gnome-extra/gnome-integration-spotify )"
+               gnome? ( gnome-extra/gnome-integration-spotify )
+               "
 S=${WORKDIR}
@@ -70,11 +69,13 @@
        sed -i \
                -e 's/\(lib\(ssl\|crypto\).so\).0.9.8/\1.1.0.0/g' \
                opt/spotify/spotify-client/spotify || die "sed failed"
+       sed -i \
+               -e 's/\(lib\(ssl\|crypto\).so\).0.9.8/\1.1.0.0/g' \
+               opt/spotify/spotify-client/Data/SpotifyHelper || die "sed failed"
        # different NSPR / NSS library names for some reason
        sed -i \
-               -e 's/\(lib\(nss3\|nssutil3\|smime3\).so\).1d/\1\x00\x00\x00/g' \
-               -e 's/\(lib\(plc4\|nspr4\).so\).0d\(.\)/\1\x00\x00\3\3/g' \
-               opt/spotify/spotify-client/libcef.so || die "sed failed"
+               -e 's/\(lib\(plc4\|nspr4\).so\).9\(.\)/\1.0d\3\3/g' \
+               opt/spotify/spotify-client/Data/SpotifyHelper || die "sed failed"
        # Fix desktop entry to launch spotify-dbus.py for GNOME integration
        if use gnome ; then
        sed -i \
@@ -101,6 +102,7 @@
        insinto ${SPOTIFY_HOME}
        doins -r opt/spotify/spotify-client/*
        fperms +x ${SPOTIFY_HOME}/spotify
+       fperms +x ${SPOTIFY_HOME}/Data/SpotifyHelper
        dodir /usr/bin
        cat <<-EOF >"${D}"/usr/bin/spotify
@@ -138,7 +140,15 @@
        #hack to fix the nspr linking in spotify
        dosym /usr/lib/libnspr4.so /opt/spotify/spotify-client/libnspr4.so.9
        dosym /usr/lib/libplc4.so /opt/spotify/spotify-client/libplc4.so.9
-       sed -i 's/libcef\.so/libcef\.so\ \/opt\/spotify\/spotify\-client\/libnspr4\.so\.9\ \/opt\/spotify\/spotify\-client\/libplc4\.so\.9/g' "${ED}/usr/bin/spotify"
+       sed -i \
+               's/libcef\.so/libcef\.so\ \/opt\/spotify\/spotify\-client\/libnspr4\.so\.9\ \/opt\/spotify\/spotify\-client\/libplc4\.so\.9/g' \
+               ${ED}/usr/bin/spotify
+
+       #TODO maybe this symlink is not needed and could be fixed with previous sed
+       dosym /opt/${PN}/spotify-client/Data/libcef.so /opt/${PN}/spotify-client/
+
+       #TODO fix for x86
+       dosym /usr/lib64/libudev.so /opt/${PN}/spotify-client/Data/libudev.so.0
 }
 pkg_preinst() {
Comment 4 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2013-10-10 18:09:21 UTC
neato, when I am out of town too...  I'll get to it soon
Comment 5 Albert Veli 2013-10-11 11:09:44 UTC
I tried the new version with libcef moved to Data subdir and with the libudev.so.0 symlink. Playlists, playback and searching works. But show artist and show album does not work. Probably an upstream problem and not a gentoo problem. When I click on an artist I get the following error in the console:

11:01:52.255 I [AppManager.cpp:252              ] Creating instance of the application artist.
[1011/130152:ERROR:child_process_launcher.cc(326)] Failed to launch child process
Comment 6 Lukas Polacek 2013-10-11 18:06:25 UTC
(In reply to Albert Veli from comment #5)
> I tried the new version with libcef moved to Data subdir and with the
> libudev.so.0 symlink. Playlists, playback and searching works. But show
> artist and show album does not work. Probably an upstream problem and not a
> gentoo problem. When I click on an artist I get the following error in the
> console:
> 
> 11:01:52.255 I [AppManager.cpp:252              ] Creating instance of the
> application artist.
> [1011/130152:ERROR:child_process_launcher.cc(326)] Failed to launch child
> process

Works here... Is /opt/spotify/spotify-client/Data/SpotifyHelper executable?
Comment 7 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2013-10-13 01:45:18 UTC
(In reply to Albert Veli from comment #5)
> I tried the new version with libcef moved to Data subdir and with the
> libudev.so.0 symlink. Playlists, playback and searching works. But show
> artist and show album does not work. Probably an upstream problem and not a
> gentoo problem. When I click on an artist I get the following error in the
> console:
> 
> 11:01:52.255 I [AppManager.cpp:252              ] Creating instance of the
> application artist.
> [1011/130152:ERROR:child_process_launcher.cc(326)] Failed to launch child
> process

If you are running hardened you need SpotifyHelper to be paxmarked, but I'm putting what I have in tree tonight, so you should get it tomorrow.