Replace spicetify-cli with spicetify-cli-bin

- Make binary package for spicetify-cli
- Add package for spicetify marketplace
This commit is contained in:
Sravan Balaji
2024-11-30 11:09:30 -05:00
parent e53950d54e
commit 5070b88f9c
6 changed files with 74 additions and 118 deletions

View File

@@ -0,0 +1 @@
DIST spicetify-cli-bin-2.38.5.tar.gz 6222457 BLAKE2B 065fd2e574696a8488626202c9f82a77959b887551f49c5b3e77b4dee7f3c1226c2e3da70202aef88496d7c7d61fb1f722a380b0e5a2f46c61ec123a2e2ec8de SHA512 8e3b62e4c35c78ca4186724b19b1559cf4515534186bf3f787ca6cf1b1f18487f5134ecf8f583a413b48ec0d0874b07fe98049a7f22f63619c84b4c4880be80b

View File

@@ -0,0 +1,45 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Commandline tool to customize Spotify client."
HOMEPAGE="https://spicetify.app/"
SRC_URI="
https://github.com/spicetify/cli/releases/download/v${PV}/spicetify-${PV}-linux-amd64.tar.gz -> ${P}.tar.gz
"
LICENSE="Apache-2.0 BSD LGPL-2.1 MIT"
SLOT="0"
KEYWORDS="~amd64"
S="${WORKDIR}"
INSTALLDIR="/opt/spicetify-cli"
IUSE="marketplace"
DEPEND="
!app-misc/spicetify-cli
"
PDEPEND="
marketplace? ( app-misc/spicetify-marketplace-bin )
"
RDEPEND="
>=media-sound/spotify-1.2.14
<=media-sound/spotify-1.2.48
"
src_install() {
insinto "${INSTALLDIR}"
doins -r {css-map.json,CustomApps,Extensions,globals.d.ts,jsHelper,Themes,spicetify}
newbin - spicetify <<-EOF
#!/usr/bin/env sh
exec /opt/spicetify-cli/spicetify \$@
EOF
fperms +x "${INSTALLDIR}/spicetify"
}
pkg_postinst() {
elog "Spicetify requires a Spotify install that it can modify."
elog "To give read and write permissions to everyone on the system to run the following commands as root."
elog "# chmod a+wr -R /opt/spotify"
}

View File

@@ -1,3 +0,0 @@
DIST spicetify-cli-2.38.4-deps.tar.xz 5215372 BLAKE2B 7a1ad9ad256ae31d2f6ae51a0bb01021ab8062769133d0fa1b25796a97925ec3a9ceb48c28490615a4456d346edb8133f255900ab7bc3216ce84135a6e01aef6 SHA512 ce4fa35ec07caccfc165a3f950fdcbf133c88329045d3363a3047aaa6fd2def8ae1960db425e3826000c11145148cdcd6443932d3812a18ff0f27d1e9c033ac6
DIST spicetify-cli-2.38.4.tar.gz 2022350 BLAKE2B 336fe1e6cf7741bb4acc73b92c13f803c0fe9abfe2ef5eac8b6d23ffad4a8dc0f576363b2022b908abd115076a48581fd989e9ee720f9ed0862a6614d59c0de3 SHA512 381d975515fc4433cb036fbd4ca3670ae509da4670c6784dc1f4fbfcd27c9f4c2f8faf9fa700428688a68dc658916b32fc29859f3df85f2668d4f0f76f39a9f5
DIST spicetify-themes.zip 101289537 BLAKE2B dfddbc466101ef4771656e0d372c0631b705edd729c6c0fafe8d71d83e26021c25e7bf1f4e91d3e96fba770c77a432c7ab7ef874ff294f60f6c7d2a8a836da1a SHA512 ffec185e48ea2140b5666ef6f791641a719c6c2c8facf11ae8fc1f08c0390501d780bbf683baea342c7cdc6863ab08980563c00353b8882cf48cec7ba99f9ea5

View File

@@ -1,115 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Based on https://data.gpo.zugaina.org/src_prepare-overlay/app-misc/spicetify-cli
EAPI=8
inherit go-module
MY_PN="cli"
WHITELIST_VERSIONS=(
"<> 1.2.14 1.2.48"
)
whitelist_versions() {
local version_spec version1 version2
local -a deps
SPOTIFY_VERSIONS=
# Iterate in reverse for elog
for ((index = $(( ${#WHITELIST_VERSIONS[@]} - 1 )); index >= 0; index--)); do
read -r version_spec version1 version2 <<< "${WHITELIST_VERSIONS[${index}]}"
case ${version_spec} in
"<>")
deps[$index]="( <=media-sound/spotify-${version2} >=media-sound/spotify-${version1} )"
SPOTIFY_VERSIONS+="${version1} -> ${version2}"
;;
"~")
deps[$index]="~media-sound/spotify-${version1}"
SPOTIFY_VERSIONS+="${version1}"
;;
*)
die "Invalid version specifier in WHITELIST_VERSIONS"
;;
esac
if [[ ${index} == 0 ]]; then
SPOTIFY_VERSIONS+=". "
elif [[ ${index} == 1 ]]; then
SPOTIFY_VERSIONS+=" and "
else
SPOTIFY_VERSIONS+=", "
fi
done
RDEPEND=" || ( ${deps[@]} )"
}
whitelist_versions
DESCRIPTION="Commandline tool to customize Spotify client."
HOMEPAGE="https://spicetify.app/"
SRC_URI="
https://github.com/spicetify/cli/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://gitlab.com/api/v4/projects/37881342/packages/generic/${PN}/${PV}/${P}-deps.tar.xz
community-themes? ( https://github.com/spicetify/spicetify-themes/archive/refs/heads/master.zip -> spicetify-themes.zip )
"
S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="Apache-2.0 BSD LGPL-2.1 MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="community-themes"
# no tests
RESTRICT="test"
BDEPEND="community-themes? ( net-misc/wget )"
INSTALLDIR="/opt/${PN}"
src_compile() {
ego build -ldflags "-X main.version=${PV}"
}
src_install() {
insinto "${INSTALLDIR}"
doins -r {CustomApps,Extensions,Themes,jsHelper,cli}
newbin - spicetify <<-EOF
#!/usr/bin/env sh
exec /opt/spicetify-cli/cli \$@
EOF
fperms +x "${INSTALLDIR}/cli"
if use community-themes; then
cd "${WORKDIR}/spicetify-themes-master"
insinto "${INSTALLDIR}/Themes"
doins -r Blossom BurntSienna Default Dreary Dribbblish Flow Matte Nightlight Onepunch SharkBlue Sleek StarryNight Turntable Ziro _Extra text manifest.json
fi
}
pkg_postinst() {
elog "Spicetify requires a Spotify install that it can modify."
elog "To give read and write permissions to everyone on the system to run the following commands as root."
elog "# chmod a+wr /opt/spotify/spotify-client"
elog "# chmod a+wr /opt/spotify/spotify-client/Apps -R"
elog ""
elog "WARNING: Do not run spicetify as root please"
elog ""
elog "Spicetify compatibility is limited to the following Spotify versions:"
elog " ${SPOTIFY_VERSIONS}"
elog ""
elog "Otherwise you can install spotify to a user modifiable location like as a flatpak:"
elog " https://spicetify.app/docs/advanced-usage/installation#spotify-installed-from-flatpak"
elog ""
elog "To install themes see:"
elog " https://spicetify.app/docs/advanced-usage/themes"
if $(has_version -r ">=media-sound/spotify-1.2.25"); then
elog ""
elog "The New Releases custom app no longer works with Spotify 1.2.25 and higher. As an alternative,"
elog "please use What's New which was created by Spotify and can be enabled via Experimental Features"
elog "if it isn't already enabled."
fi
}

View File

@@ -0,0 +1 @@
DIST marketplace.zip 131593 BLAKE2B b883ebecc06ac30781209af1d4b2a3d04ce39dd7c7f12df64c52291a5f8a69f02ca5c74d3bbb2ba5f5661defc8b830b2e514a12faf7402e1d51570aed74aa2f2 SHA512 34997a96d4740752bc409af6397219d61470a44091dc08c4092801d6537069fc2d5a7112ed4d522870ccacd536a6c8113d15c882aaba3d7d47f70d1a6ae20fe9

View File

@@ -0,0 +1,27 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Download extensions and themes directly from Spicetify"
HOMEPAGE="https://github.com/spicetify/marketplace"
SRC_URI="
${HOMEPAGE}/releases/download/v${PV}/marketplace.zip
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
S="${WORKDIR}"
INSTALLDIR="/opt/spicetify-cli"
DEPEND="
|| ( app-misc/spicetify-cli app-misc/spicetify-cli-bin )
"
src_install() {
insinto "${INSTALLDIR}/CustomApps"
mv marketplace-dist marketplace
doins -r marketplace
}