summaryrefslogtreecommitdiff
path: root/media-sound/spotify
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-04 19:20:22 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-04 19:20:22 +0100
commit874520e63d7f7ccbb8fefe7bcbd4c5d72a77a247 (patch)
tree015a7cc445ce0ac0099c9d5d28b12f50e2de86e6 /media-sound/spotify
parentfccc1842491956b425852cfcaede76771d558d28 (diff)
media-sound/spotify : revision bump (https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=517e978ef861d2037bf46f4d96e78c2bacbcef3b)
Diffstat (limited to 'media-sound/spotify')
-rw-r--r--media-sound/spotify/Manifest1
-rw-r--r--media-sound/spotify/files/spotify-wrapper38
-rw-r--r--media-sound/spotify/spotify-1.2.20-r2.ebuild132
3 files changed, 171 insertions, 0 deletions
diff --git a/media-sound/spotify/Manifest b/media-sound/spotify/Manifest
new file mode 100644
index 00000000..26cf5284
--- /dev/null
+++ b/media-sound/spotify/Manifest
@@ -0,0 +1 @@
+DIST spotify-client_1.2.20.1210.g2a8a8a57_amd64.deb 124183006 BLAKE2B 32f48b06311d25ced25516e8a521dd87ebd44179fdb93b6f5ba53636eb4b53b5be97092d227968846188f0d51d9a8f6f2e350d009b797519d1cb0f252783076d SHA512 a527d6fecec9fa925d8c60e0ba8764ec8f53d3f5268d0b968d3bdeca7d367081f7faa0bcd1fe016491f15e37a1238ad40dbca1fc93b2533e0238e7a7a07f352b
diff --git a/media-sound/spotify/files/spotify-wrapper b/media-sound/spotify/files/spotify-wrapper
new file mode 100644
index 00000000..862fa4c6
--- /dev/null
+++ b/media-sound/spotify/files/spotify-wrapper
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+export LD_LIBRARY_PATH="/usr/$LIBDIR/apulse"
+
+if command -v spotify-dbus.py > /dev/null; then
+ echo "Launching spotify with Gnome systray integration."
+ spotify-dbus.py "$@"
+elif [ -e "$SPOTIFY_HOME/spotify-tray" ] > /dev/null; then
+ echo "Launching spotify with generic systray integration."
+ minimized=
+ for arg; do
+ if [ "$arg" = --minimized ]; then
+ minimized=$arg
+ break
+ fi
+ done
+ GDK_BACKEND="x11" "$SPOTIFY_HOME/spotify-tray" \
+ --client-path="$SPOTIFY_HOME/spotify" --toggle $minimized -- "$@"
+else
+ if pgrep -f "Spotify/[0-9].[0-9].[0-9]" > /dev/null; then
+ busline="org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.OpenUri ${1}"
+ echo "Spotify is already running"
+ echo "Sending ${busline} to dbus"
+ if command -v qdbus &> /dev/null; then
+ qdbus $busline
+ exit
+ fi
+ if command -v dbus-send &> /dev/null; then
+ dbus-send $busline
+ exit
+ fi
+ echo "No bus dispatcher found."
+ else
+ echo "Neither gnome-integration-spotify nor spotify-tray are installed."
+ echo "Launching spotify without systray integration."
+ exec "$SPOTIFY_HOME/spotify" "$@"
+ fi
+fi
diff --git a/media-sound/spotify/spotify-1.2.20-r2.ebuild b/media-sound/spotify/spotify-1.2.20-r2.ebuild
new file mode 100644
index 00000000..51e94fef
--- /dev/null
+++ b/media-sound/spotify/spotify-1.2.20-r2.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature pax-utils unpacker xdg
+
+DESCRIPTION="Spotify is a social music platform"
+HOMEPAGE="https://www.spotify.com/download/linux/"
+SRC_BASE="http://repository.spotify.com/pool/non-free/s/${PN}-client/"
+BUILD_ID_AMD64="1210.g2a8a8a57"
+SRC_URI="${SRC_BASE}${PN}-client_${PV}.${BUILD_ID_AMD64}_amd64.deb"
+
+LICENSE="Spotify"
+SLOT="0"
+KEYWORDS="amd64"
+IUSE="libnotify local-playback pax-kernel pulseaudio"
+RESTRICT="mirror strip"
+
+BDEPEND="
+ >=dev-util/patchelf-0.10
+ sys-devel/gettext
+"
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ dev-libs/openssl:0=
+ dev-python/dbus-python
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/harfbuzz
+ media-libs/mesa[X(+)]
+ net-misc/curl[ssl]
+ net-print/cups
+ sys-apps/dbus
+ sys-libs/zlib
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/pango
+ !gnome-extra/gnome-integration-spotify
+ libnotify? ( x11-libs/libnotify )
+ dev-libs/libayatana-appindicator
+ local-playback? ( media-video/ffmpeg:0/56.58.58 )
+ pulseaudio? ( media-libs/libpulse )
+ !pulseaudio? ( media-sound/apulse )
+"
+ #gnome-integration-spotify causes spotify to fail to launch
+ #sys-libs/glibc
+
+S="${WORKDIR}/"
+
+QA_PREBUILT="
+ opt/spotify/spotify-client/spotify
+ opt/spotify/spotify-client/libEGL.so
+ opt/spotify/spotify-client/libGLESv2.so
+ opt/spotify/spotify-client/libcef.so
+ opt/spotify/spotify-client/libvk_swiftshader.so
+ opt/spotify/spotify-client/libvulkan.so.1
+ opt/spotify/spotify-client/swiftshader/libEGL.so
+ opt/spotify/spotify-client/swiftshader/libGLESv2.so
+"
+
+src_prepare() {
+ default
+ # Spotify links against libcurl-gnutls.so.4, which does not exist in Gentoo.
+ patchelf --replace-needed libcurl-gnutls.so.4 libcurl.so.4 usr/bin/spotify \
+ || die "failed to patch libcurl library dependency"
+}
+
+src_install() {
+ gunzip usr/share/doc/spotify-client/changelog.gz || die
+ dodoc usr/share/doc/spotify-client/changelog
+
+ SPOTIFY_PKG_HOME=usr/share/spotify
+ insinto /usr/share/pixmaps
+ doins ${SPOTIFY_PKG_HOME}/icons/*.png
+
+ # install in /opt/spotify
+ SPOTIFY_HOME=/opt/spotify/spotify-client
+ insinto ${SPOTIFY_HOME}
+ doins -r ${SPOTIFY_PKG_HOME}/*
+ fperms +x ${SPOTIFY_HOME}/spotify
+
+ dodir /usr/bin
+ SPOTIFY_HOME=${SPOTIFY_HOME} LIBDIR=$(get_libdir) \
+ envsubst '$SPOTIFY_HOME $LIBDIR' \
+ < "${FILESDIR}/spotify-wrapper" > "${D}/usr/bin/spotify" || die
+ fperms +x /usr/bin/spotify
+
+ local size
+ for size in 16 22 24 32 48 64 128 256 512; do
+ newicon -s ${size} "${S}${SPOTIFY_PKG_HOME}/icons/spotify-linux-${size}.png" \
+ "spotify-client.png"
+ done
+ domenu "${S}${SPOTIFY_PKG_HOME}/spotify.desktop"
+ if use pax-kernel; then
+ #create the headers, reset them to default, then paxmark -m them
+ pax-mark C "${ED}${SPOTIFY_HOME}/${PN}" || die
+ pax-mark z "${ED}${SPOTIFY_HOME}/${PN}" || die
+ pax-mark m "${ED}${SPOTIFY_HOME}/${PN}" || die
+ eqawarn "You have set USE=pax-kernel meaning that you intend to run"
+ eqawarn "${PN} under a PaX enabled kernel. To do so, we must modify"
+ eqawarn "the ${PN} binary itself and this *may* lead to breakage! If"
+ eqawarn "you suspect that ${PN} is being broken by this modification,"
+ eqawarn "please open a bug."
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ ewarn "If Spotify crashes after an upgrade its cache may be corrupt."
+ ewarn "To remove the cache:"
+ ewarn "rm -rf ~/.cache/spotify"
+
+ optfeature "systray integration on non-Gnome DEs" media-sound/spotify-tray
+}