From b206077917e58f017c577e7cb1cdbfa938a7f899 Mon Sep 17 00:00:00 2001 From: David Roman Date: Mon, 24 Feb 2025 10:44:22 +0100 Subject: [PATCH] media-sound/TauonMusicBox: add 7.9.0 Signed-off-by: David Roman --- media-sound/TauonMusicBox/Manifest | 1 + .../TauonMusicBox/TauonMusicBox-7.9.0.ebuild | 104 ++++++++++++++++++ .../TauonMusicBox-7.9.0-phazor-build.patch | 17 +++ 3 files changed, 122 insertions(+) create mode 100644 media-sound/TauonMusicBox/TauonMusicBox-7.9.0.ebuild create mode 100644 media-sound/TauonMusicBox/files/TauonMusicBox-7.9.0-phazor-build.patch diff --git a/media-sound/TauonMusicBox/Manifest b/media-sound/TauonMusicBox/Manifest index 4cdb6d070f..29994b0f82 100644 --- a/media-sound/TauonMusicBox/Manifest +++ b/media-sound/TauonMusicBox/Manifest @@ -1,2 +1,3 @@ DIST TauonMusicBox-7.8.0.tar.gz 1080654 BLAKE2B 6c671efc10f0e7340bb2db0ebcc59f25784a665a9a2e85ab5132a10362d9d0f7041affedc763ed5acde19c529c742e127eb1493578f9f79ca7f3b1dfd4439784 SHA512 0896e185314037e23d76776ce96b227ede8a96651958df7ca0acc0d37c431169aeb72395116d8887d37c1360c15f436f7488c751866e60fa5ba3a5082b9acef8 DIST TauonMusicBox-7.8.3.tar.gz 1085686 BLAKE2B 92014544bc45c92ca8170ae88c56eb2a767b0dff2dcd1086cb73d22a4287b6a82be7b3134a41329940ccc6080377d82b71c2d9ef891975d62756068c8a97f867 SHA512 f1679326a49c1d341ea773b5f402fa4ad00ac2c79549fc04b2959bdf2dfad045e6e88add5b9075e660016a4d94d15e43e5d5c93e6f413e727d30f5aaa8fbdc1d +DIST TauonMusicBox-7.9.0.tar.gz 1354787 BLAKE2B 2116c84ec687ec337e712aefa5da54b08e572b917c3a41d94687a95bfefd8d7a3276422b4e68cda8ed5f27f92a32bf491d41f1f4476e193f19ce927d6f6d02b4 SHA512 17b26b296385f3c2b6006a6a33453e5a277c8bc901f717bac3751bddc1691116e0bf116db9457e425d61d300200b5ca487f5b4949ca2be2993657be4fa9d87cf diff --git a/media-sound/TauonMusicBox/TauonMusicBox-7.9.0.ebuild b/media-sound/TauonMusicBox/TauonMusicBox-7.9.0.ebuild new file mode 100644 index 0000000000..1860129a05 --- /dev/null +++ b/media-sound/TauonMusicBox/TauonMusicBox-7.9.0.ebuild @@ -0,0 +1,104 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PLOCALES="cs de es fr_FR hu id it ja_JP nb_NO pl pt pt_BR pt_PT ru sv tr zh_CN" + +PYTHON_COMPAT=( python3_{10..12} ) +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools + +inherit desktop distutils-r1 optfeature plocale xdg + +DESCRIPTION="The desktop music player of today!" +HOMEPAGE="https://tauonmusicbox.rocks/" + +if [[ ${PV} == *9999 ]]; then + EGIT_SUBMODULES=() + inherit git-r3 + EGIT_REPO_URI="https://github.com/Taiko2k/${PN}" +else + SRC_URI="https://github.com/Taiko2k/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi + +S="${WORKDIR}/Tauon-${PV}" + +LICENSE="GPL-3" +SLOT="0" + +PHAZOR_DEPS=" + dev-libs/miniaudio + media-libs/flac + media-libs/game-music-emu + media-libs/libopenmpt + media-libs/opus + media-libs/opusfile + media-libs/libsamplerate + media-libs/libvorbis + media-sound/mpg123 + media-sound/wavpack + sci-libs/kissfft[-cpu_flags_x86_sse] +" + +DEPEND=" + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + dev-python/musicbrainzngs[${PYTHON_USEDEP}] + dev-python/natsort[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pysdl2[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + dev-python/send2trash[${PYTHON_USEDEP}] + dev-python/unidecode[${PYTHON_USEDEP}] + media-video/ffmpeg + media-libs/mutagen[${PYTHON_USEDEP}] + media-libs/sdl2-image + + ${PHAZOR_DEPS} +" + +RDEPEND=" + ${DEPEND} + + dev-libs/libayatana-appindicator + media-sound/mpg123-base + x11-libs/libnotify +" + +BDEPEND="sys-devel/gettext" + +PATCHES=( "${FILESDIR}/${PN}-7.9.0-phazor-build.patch" ) + +src_compile() { + distutils-r1_src_compile + + build_locale() { + msgfmt -o "locale/${1}/LC_MESSAGES/tauon.mo" "locale/${1}/LC_MESSAGES/tauon.po" || die + } + + plocale_for_each_locale build_locale +} + +python_install() { + distutils-r1_python_install + + install_locale() { + insinto "/usr/share/locale/${1}/LC_MESSAGES" + doins "locale/${1}/LC_MESSAGES/tauon.mo" + } + + plocale_for_each_locale install_locale + + sed -i 's/\/opt\/tauon-music-box\/tauonmb.sh/tauon/g' extra/tauonmb.desktop || die + domenu extra/tauonmb.desktop + doicon -s scalable extra/tauonmb.svg + +} + +pkg_postinst() { + optfeature "last fm support" dev-python/pylast + optfeature "PLEX support" dev-python/plexapi + + xdg_pkg_postinst +} diff --git a/media-sound/TauonMusicBox/files/TauonMusicBox-7.9.0-phazor-build.patch b/media-sound/TauonMusicBox/files/TauonMusicBox-7.9.0-phazor-build.patch new file mode 100644 index 0000000000..33d6f966bc --- /dev/null +++ b/media-sound/TauonMusicBox/files/TauonMusicBox-7.9.0-phazor-build.patch @@ -0,0 +1,17 @@ +diff --git a/pyproject.toml b/pyproject.toml +index 8c85dc69..2d42d31f 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -86,10 +86,10 @@ + + # Linux + macOS + Windows (MINGW64) + ext-modules = [ +- {name = "phazor", sources = ["src/phazor/kissfft/kiss_fftr.c", "src/phazor/kissfft/kiss_fft.c", "src/phazor/phazor.c"], include-dirs = ["/usr/include/opus", "/opt/homebrew/include/opus", "/opt/homebrew/include", "C:/msys64/mingw64/include/opus"], libraries = ["samplerate", "wavpack", "opusfile", "vorbisfile", "mpg123", "FLAC", "openmpt", "gme"], library-dirs = ["/opt/homebrew/lib"] }, ++ {name = "phazor", sources = ["src/phazor/phazor.c"], include-dirs = ["/usr/include/opus", "/opt/homebrew/include/opus", "/opt/homebrew/include", "C:/msys64/mingw64/include/opus"], libraries = ["kissfft-float-openmp", "samplerate", "wavpack", "opusfile", "vorbisfile", "mpg123", "FLAC", "openmpt", "gme"], library-dirs = ["/opt/homebrew/lib"] }, + # Set as optional to allow soft-failure, it's expected not to build on Windows/macOS, but we don't want to fail the entire build on it + # I have not found a better way to solve this, ideally we would somehow tag this as Linux-exclusive +- {name = "phazor-pw", sources = ["src/phazor/kissfft/kiss_fftr.c", "src/phazor/kissfft/kiss_fft.c", "src/phazor/phazor.c"], include-dirs = ["/usr/include/opus"], libraries = ["samplerate", "wavpack", "opusfile", "vorbisfile", "mpg123", "FLAC", "openmpt", "gme", "pipewire-0.3"], optional = true }, ++ {name = "phazor-pw", sources = ["src/phazor/phazor.c"], include-dirs = ["/usr/include/opus"], libraries = ["kissfft-float-openmp", "samplerate", "wavpack", "opusfile", "vorbisfile", "mpg123", "FLAC", "openmpt", "gme", "pipewire-0.3"], optional = true }, + ] + + package-dir = {"" = "src"}