diff --git a/app-misc/spicetify-cli/Manifest b/app-misc/spicetify-cli/Manifest index a8690eb..b97f8a4 100644 --- a/app-misc/spicetify-cli/Manifest +++ b/app-misc/spicetify-cli/Manifest @@ -1,2 +1,4 @@ DIST spicetify-cli-2.24.2-deps.tar.xz 5086800 BLAKE2B 5a6b929c5ad606f57532f9d77211bc6e39c52b4de68c19b3a6483a6e69c46f5e29dd2f6922906d61996015c3401dcbbb9236938dcb4a0e7b738d49bd35adb98c SHA512 d834ec669c66aba050b90899ccb00486d6c9d0c337bd2267824e8fb5bd1fc200cb7a8992b731e32b58e5e71a2e5a34f79b6d194fc6f6daec41512da793b6028c DIST spicetify-cli-2.24.2.tar.gz 2041372 BLAKE2B 05ddcd1ca505060bc04fb3cc4f5cadccae086a18aa842adee3cfb5e5cca8e2bb5d925f085edcad562d4fbbbc542eaeaee28510394dacafe8cd6368c73ae5517b SHA512 c68ce28d0c10762388c595484fd5f5876feb2892bd9c1767d83fb425c40074b07900cc6061dbd4a7d2eea8b0cb3dd07fb22e708e3b698ba1986bd55e48b506b5 +DIST spicetify-cli-2.25.0-deps.tar.xz 5124108 BLAKE2B f4e1c0d01d68cb161ff6e981d7a6bec8096e654fd99f564e15ac0ee6c0ce395ec4c3f6d83eca0ea36f9c83be77024104f9a1aa02570249094b27f1b1cb2fd9a6 SHA512 fc921bdb63349ace057085048e0257a5dcdbcf2779b75ff6af5a3cadbe7c2fcd9fdb4c95b47d4f54e0cb2ad2fe13043049e587ab4eb1f6dc7f617735b6527de8 +DIST spicetify-cli-2.25.0.tar.gz 2041779 BLAKE2B 4cbdee200f1e996e942e4169ce5dcb338692a2196ee9605e5a6b494ba81e13b0c3a64481f9c5963b2d1b93d4b4c4cc9a68c96f277968837a72788a5a5f3ba1ae SHA512 e9fcec920d94c3ed4beece686108a052b469f378833aa1a2f679ad6ea6ee3cb36af3a9efd69a15d350e17aec2f3cfa4e2c76550106f015316a3ff3ae339a5909 diff --git a/app-misc/spicetify-cli/spicetify-cli-2.25.0.ebuild b/app-misc/spicetify-cli/spicetify-cli-2.25.0.ebuild new file mode 100644 index 0000000..5b3ba39 --- /dev/null +++ b/app-misc/spicetify-cli/spicetify-cli-2.25.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +WHITELIST_VERSIONS=( + "~ 1.2.22" + "~ 1.2.20" + "~ 1.2.13" + "~ 1.2.11" + "~ 1.2.9" + "~ 1.2.8" +) + +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/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 +" + +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,spicetify-cli} + dobin "${FILESDIR}/spicetify" + fperms +x "${INSTALLDIR}/spicetify-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." + elog "# chmod a+wr /opt/spotify/spotify-client" + elog "# chmod a+wr /opt/spotify/spotify-client/Apps -R" + 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" +}