Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 651984

Summary: media-sound/spotify-1.0.77: version bump
Product: Gentoo Linux Reporter: Nikos Chantziaras <realnc>
Component: Current packagesAssignee: Matthew Thode ( prometheanfire ) <prometheanfire>
Status: RESOLVED INVALID    
Severity: normal CC: jstein
Priority: Normal Keywords: EBUILD, PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/7710
https://bugs.gentoo.org/show_bug.cgi?id=653042
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Patch against spotify-1.0.72.ebuild

Description Nikos Chantziaras 2018-03-30 14:08:19 UTC
Created attachment 526158 [details, diff]
Patch against spotify-1.0.72.ebuild

Spotify released a new Linux client (1.0.77).

Upstream dropped 32-bit support in this version, so the x86 keyword has been dropped. There's no information on whether this is permanent or not, so the x86-related bits have been kept in the ebuild but commented-out.

Also, upstream links against libcurl-gnutls.so.4, which does not exist in Gentoo. patchelf is used (and DEPENDed on) to modify the binary. At least patchelf-0.9_p20180129 is needed; older versions produce binaries that cannot run.

It does not seem to matter whether curl is built with openssl or gnutls. I have tested with both, and spotify works fine in either case, so the "curl_ssl_openssl" USE flag has been removed from the curl dep.

Spotify attempts to dlopen "libcrypto.so" and various versions of it, in this order:

libcrypto.so.1.1
libcrypto.so.1.0.2
libcrypto.so.1.0.1
libcrypto.so.1.0.0
libcrypto.so

so dev-libs/openssl:0 has been added to RDEPEND. AFAIK, libressl is not to be used as a binary-only drop-in replacement for openssl, so no libressl USE flag is provided.

(github PR will be submitted shortly.)
Comment 1 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2018-03-30 15:30:00 UTC
spotify 
/opt/spotify/spotify-client/spotify: /usr/lib64/libcurl.so.4: no version information available (required by /opt/spotify/spotify-client/spotify)
/opt/spotify/spotify-client/spotify: /usr/lib64/libcurl.so.4: no version information available (required by /opt/spotify/spotify-client/spotify)
/proc/self/exe: /usr/lib64/libcurl.so.4: no version information available (required by /proc/self/exe)
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >'
  what():  set_option: Cannot assign requested address
Aborted (core dumped)


just so it's here too
Comment 2 Nikos Chantziaras 2018-03-30 15:56:27 UTC
Hm. That does look like a socket error message. Maybe there's some other requirement for curl. Here:

net-misc/curl-7.59.0::gentoo was built with the following:
USE="ipv6 ssl -adns -brotli -http2 -idn -kerberos -ldap -metalink -rtmp -samba -ssh -static-libs -test -threads" ABI_X86="32 (64) (-x32)" CURL_SSL="openssl -axtls -gnutls -libressl -mbedtls -nss (-winssl)"

Can you post yours to see if there's differences?
Comment 3 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2018-03-30 16:04:37 UTC
I build with rtmp as well, but that's it (this paste is my gnutls linking test, but I got the same error with openssl)

     Installed versions:  7.59.0^t{xpak:2}(10:56:01 AM 03/30/2018)(ipv6 rtmp ssl -adns -brotli -http2 -idn -kerberos -ldap -metalink -samba -ssh -static-libs -test -threads ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="32 64 -x32" CURL_SSL="gnutls -axtls -libressl -mbedtls -nss -openssl -winssl" ELIBC="-Winnt")

Just posted https://community.spotify.com/t5/Desktop-Linux/libcurl4/m-p/4435771/highlight/false#M16040 as well
Comment 4 Nikos Chantziaras 2018-03-30 16:16:34 UTC
Closing, since 1.0.77 was just an experiment build by upstream.