diff --git a/app-misc/spicetify-cli/Manifest b/app-misc/spicetify-cli/Manifest index 6008bb1..63ecf94 100644 --- a/app-misc/spicetify-cli/Manifest +++ b/app-misc/spicetify-cli/Manifest @@ -1,2 +1,4 @@ DIST spicetify-cli-2.36.12-deps.tar.xz 5298444 BLAKE2B 3c4e154e600c0c0eba2a89d74cd3542c24d7c6ccfcab08405514cb070451944144ab709d562881b35c806f27c1be41d5f2880ac57d89941d3a6e66ded2796fc6 SHA512 f14b1a95a037da63ab74c1073b5f7ab26924b2e77bf65a6ae3c436f349969d5e74f923b24ca9c35eba4c60c301e76aec8c7887da683ee08885317e867aa537d2 DIST spicetify-cli-2.36.12.tar.gz 2019215 BLAKE2B f400f43999816e3c962526332da042c716fdc04d7f7dfe0522371d77cf74dc755e88497d7aeac8ce58005f60a5a303a4955e358d7c5f85b3febb1bf2fba3499b SHA512 53506979040469e5f0b03daddf25e3f3ba3ba1a2adad4d0367e8484d496753ceae470bb929f46c0b52c997cc7f7648c00ab9d23dd851e8da12d209cd938e1b0a +DIST spicetify-cli-2.36.13-deps.tar.xz 5203916 BLAKE2B 6563c43cc708a6c7c037f49ea0fc6cf5ff51af3a6073e8ebbdcf91bce4ff6adf62e4b3eaf04122dfc48614ca65a3e3b60adb73a9388e59e7a601dfae8d040aa1 SHA512 658a8d1e127247a51cea1e9284c3d912c035528373cefa52a8369ddbb0de857178481e7aec84f611e40eb4f5b0a9d212bee19135b6855de010ac05b3f1630954 +DIST spicetify-cli-2.36.13.tar.gz 2020031 BLAKE2B 62b52ddab0e045906b55ec577f0d5d5c29211143c472f4fbe856d6036c41c6807d319a3788ee13c1c25251e853757a229e99a150eb1d01ddd1c7ff0e9e5ed12c SHA512 afac8ef74c40301053203cc3566a6528d034067375d87ccb7415bfaf4ab0b85aec62b4a0932be82aa89ddcc8762e4a72d2a39c0fe746034f06b716f045daea57 diff --git a/app-misc/spicetify-cli/spicetify-cli-2.36.13.ebuild b/app-misc/spicetify-cli/spicetify-cli-2.36.13.ebuild new file mode 100644 index 0000000..efca4c3 --- /dev/null +++ b/app-misc/spicetify-cli/spicetify-cli-2.36.13.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +MY_PN="cli" + +WHITELIST_VERSIONS=( + "<> 1.2.8 1.2.40" +) + +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 +" +S="${WORKDIR}/${MY_PN}-${PV}" + +LICENSE="Apache-2.0 BSD LGPL-2.1 MIT" +SLOT="0" +KEYWORDS="~amd64" + +# no tests +RESTRICT="test" + +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" +} + +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 +}