Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] [WIP] spotify: restrict, remove INSTALL script.
@ 2020-07-14 19:36 ericonr
  2020-07-14 20:42 ` [PR PATCH] [Updated] " ericonr
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: ericonr @ 2020-07-14 19:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 638 bytes --]

There is a new pull request by ericonr against master on the void-packages repository

https://github.com/ericonr/void-packages spotifyd-options
https://github.com/void-linux/void-packages/pull/23576

[WIP] spotify: restrict, remove INSTALL script.
Following discussion on IRC, this package should be restricted.

TODO:

- Still need to find some way to fetch the license, don't want to vendor it in.
- I need some ideas on how to obtain the symlinks for `libssl` and `libcrypto` shared libraries
- It built fine but I haven't tested it yet

A patch file from https://github.com/void-linux/void-packages/pull/23576.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-spotifyd-options-23576.patch --]
[-- Type: text/x-diff, Size: 5412 bytes --]

From c0f06bff8c21fde23b89655aba8e6b6606b116ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 14 Jul 2020 16:30:45 -0300
Subject: [PATCH] spotify: restrict, remove INSTALL script.

---
 srcpkgs/spotify/INSTALL       | 41 --------------------------
 srcpkgs/spotify/REMOVE        | 11 -------
 srcpkgs/spotify/files/spotify |  2 +-
 srcpkgs/spotify/template      | 54 +++++++++++++++++++++++++++++------
 4 files changed, 46 insertions(+), 62 deletions(-)
 delete mode 100644 srcpkgs/spotify/INSTALL
 delete mode 100644 srcpkgs/spotify/REMOVE

diff --git a/srcpkgs/spotify/INSTALL b/srcpkgs/spotify/INSTALL
deleted file mode 100644
index 1cf70985dcb..00000000000
--- a/srcpkgs/spotify/INSTALL
+++ /dev/null
@@ -1,41 +0,0 @@
-# INSTALL for 'spotify'
-# Fetching proprietary binaries at install-time
-
-_BUILDDIR="/tmp/spotify.build"
-_LIBS=$(ldconfig -vNX -n usr/lib 2>/dev/null)
-
-linklib() {
-	_LIB=$(echo "$_LIBS" | grep -m 1 "${1}\.so" | sed 's/\s*\([^ ]*\).*$/\1/')
-	ln -sf "/usr/lib/${_LIB}" "/usr/share/spotify/${1}.so.${2}"
-}
-
-if test "$ACTION" = "post"; then
-	. usr/share/spotify/pkgdata
-	mkdir -p "$_BUILDDIR"
-	(
-		set -e
-		cd "$_BUILDDIR"
-		xbps-uhelper fetch "http://repository.spotify.com/pool/non-free/s/spotify-client/spotify-client_${SVERSION}.deb"
-		echo "${SCHECKSUM}  spotify-client_${SVERSION}.deb" >checksum
-		sha256sum -c checksum
-		ar x "spotify-client_${SVERSION}.deb"
-		tar -xf data.tar.gz
-	)
-	if [ $? -ne 0 ] ; then
-		echo "Failed downloading spotify client"
-		rm -r "$_BUILDDIR";
-		exit 1;
-	fi
-
-	[ -d "/usr/share/spotify/spotify-client" ] && rm -rf usr/share/spotify/spotify-client
-	mv -f "${_BUILDDIR}/usr/share/spotify" usr/share/spotify/spotify-client
-	for _s in 16 22 24 32 48 64 128 256 512; do
-		mkdir -p "/usr/share/icons/hicolor/${_s}x${_s}/apps"
-		ln -sf "/usr/share/spotify/spotify-client/icons/spotify-linux-${_s}.png" "/usr/share/icons/hicolor/${_s}x${_s}/apps/spotify-client.png"
-	done
-	mkdir -p usr/share/applications
-	ln -sf /usr/share/spotify/spotify-client/spotify.desktop usr/share/applications/spotify.desktop
-	linklib "libssl" "1.0.0"
-	linklib "libcrypto" "1.0.0"
-	rm -r "$_BUILDDIR"
-fi
diff --git a/srcpkgs/spotify/REMOVE b/srcpkgs/spotify/REMOVE
deleted file mode 100644
index c109f570ef8..00000000000
--- a/srcpkgs/spotify/REMOVE
+++ /dev/null
@@ -1,11 +0,0 @@
-# REMOVE for 'spotify'
-# Deleting dynamically fetched files
-
-if test "$ACTION" = "post"; then
-	rm usr/share/applications/spotify.desktop
-	for _s in 16 22 24 32 48 64 128 256 512; do
-		rm "/usr/share/icons/hicolor/${_s}x${_s}/apps/spotify-client.png"
-	done
-	rm -r usr/share/spotify
-fi
-
diff --git a/srcpkgs/spotify/files/spotify b/srcpkgs/spotify/files/spotify
index 35f912475d1..ab9cc8db10f 100644
--- a/srcpkgs/spotify/files/spotify
+++ b/srcpkgs/spotify/files/spotify
@@ -1,2 +1,2 @@
 #!/bin/sh
-LD_LIBRARY_PATH=/usr/share/spotify exec /usr/share/spotify/spotify-client/spotify "$@"
+LD_LIBRARY_PATH=/usr/libexec/spotify exec /usr/libexec/spotify/spotify "$@"
diff --git a/srcpkgs/spotify/template b/srcpkgs/spotify/template
index d9ec603bf6a..ce3038a9a25 100644
--- a/srcpkgs/spotify/template
+++ b/srcpkgs/spotify/template
@@ -1,21 +1,57 @@
 # Template file for 'spotify'
 pkgname=spotify
 version=1.1.26
-revision=1
+revision=2
+_ver="${version}.501.gbe11e53b-15_amd64"
 archs="x86_64"
 create_wrksrc=yes
 build_style=fetch
-depends="binutils gtk+ nss GConf libXScrnSaver libatomic"
+depends="gtk+ nss GConf libXScrnSaver libatomic"
 short_desc="Proprietary music streaming client"
 maintainer="Stefan Mühlinghaus <jazzman@alphabreed.com>"
-license="Proprietary"
+license="custom:Proprietary"
 homepage="https://www.spotify.com"
+distfiles="http://repository.spotify.com/pool/non-free/s/spotify-client/spotify-client_${_ver}.deb"
+checksum="54ba1bd91020913273c469591cedeebfa34aedc250033dde7c8b3fded94a9c71"
 repository=nonfree
-_sversion=".501.gbe11e53b-15_amd64"
-_schecksum="54ba1bd91020913273c469591cedeebfa34aedc250033dde7c8b3fded94a9c71"
+restricted=yes
+nostrip=yes
+
+do_build() {
+	ar x "spotify-client_${_ver}.deb"
+	bsdtar -xvf data.tar.gz
+}
+
+_linklib() {
+	local LIB
+	LIB="$(find /usr/lib -name "${1}.so*" | sort | tail -1)"
+	ln -sf "/usr/lib/${LIB}" "${DESTDIR}/usr/libexec/spotify/${1}.so.${2}"
+}
+
 do_install() {
-	vbin ${FILESDIR}/spotify
-	vmkdir usr/share/spotify
-	echo "export SVERSION=\"${version}${_sversion}\"" >"${DESTDIR}/usr/share/spotify/pkgdata"
-	echo "export SCHECKSUM=\"${_schecksum}\"" >>"${DESTDIR}/usr/share/spotify/pkgdata"
+	vbin "${FILESDIR}/spotify"
+
+	vmkdir usr/libexec/spotify
+	vmkdir usr/share/
+	vcopy usr/share/spotify usr/share/
+
+	# move ELFs to /usr/libexec/spotify
+	mv ${DESTDIR}/usr/share/spotify/{libEGL.so,libGLESv2.so,libcef.so,spotify} \
+		"${DESTDIR}/usr/libexec/spotify"
+	mv "${DESTDIR}/usr/share/spotify/swiftshader" "${DESTDIR}/usr/libexec/spotify"
+
+	# install icons
+	for _s in 16 22 24 32 48 64 128 256 512; do
+		vmkdir "usr/share/icons/hicolor/${_s}x${_s}/apps"
+		ln -sf "/usr/share/spotify/icons/spotify-linux-${_s}.png" \
+			"${DESTDIR}/usr/share/icons/hicolor/${_s}x${_s}/apps/spotify-client.png"
+	done
+
+	vmkdir usr/share/applications
+	ln -sf /usr/share/spotify/spotify.desktop \
+		"${DESTDIR}/usr/share/applications/spotify.desktop"
+
+	# provide dynamic libraries
+	_linklib libssl 1.0.0
+	_linklib libcrypto 1.0.0
 }

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2020-07-20  4:18 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-14 19:36 [PR PATCH] [WIP] spotify: restrict, remove INSTALL script ericonr
2020-07-14 20:42 ` [PR PATCH] [Updated] " ericonr
2020-07-14 20:51 ` ericonr
2020-07-14 23:58 ` ericonr
2020-07-15  0:03 ` ericonr
2020-07-15 15:05 ` sgn
2020-07-15 17:34 ` ericonr
2020-07-15 20:57 ` Chocimier
2020-07-15 21:26 ` [PR PATCH] [Updated] " ericonr
2020-07-15 23:37 ` [PR REVIEW] " sgn
2020-07-15 23:37 ` sgn
2020-07-16  0:05 ` ericonr
2020-07-16  0:14 ` [PR PATCH] [Updated] " ericonr
2020-07-16  0:14 ` [PR REVIEW] " ericonr
2020-07-20  4:18 ` [PR PATCH] [Merged]: " abenson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).