diff --git a/media-sound/tidal-hifi-bin/Manifest b/media-sound/tidal-hifi-bin/Manifest index d2a4b472bd..22048e1ea4 100644 --- a/media-sound/tidal-hifi-bin/Manifest +++ b/media-sound/tidal-hifi-bin/Manifest @@ -1 +1,2 @@ DIST tidal-hifi-bin-5.16.0.tar.gz 113448747 BLAKE2B 5c0721de2d6997c158e2f850d01129eea4c7b5ef3e3ea48c216dc68fec5f05565f0d9bcf6b70744c106b2408999e91bf19da5b11ec1773b80a123972095c9d49 SHA512 edde0e60330ed9071be28d0a255c801c32382e5f7b5c3eefe802d16474f27af2e8a55790e9a71bf049c1cd3ea6ef05c5fc1f9e1390c3a3d58e53f83d76430427 +DIST tidal-hifi-bin-5.17.0.tar.gz 114278717 BLAKE2B 9824f67dbef9abb02a3f55bb127fbca33572cab6823e229b0d3e3f14341f0d69d4592795ddced6d70a317f559fc2e46f081dca3890008ea54676a18dca3fb0fd SHA512 d529032a905d0d53982d46166abff78b84857cd553aa939ec58b8ddcbdffe0c5891b6c5adc0a30820541214fdd7a326373c1a3474ccdb2835c216f78715c8d08 diff --git a/media-sound/tidal-hifi-bin/tidal-hifi-bin-5.17.0.ebuild b/media-sound/tidal-hifi-bin/tidal-hifi-bin-5.17.0.ebuild new file mode 100644 index 0000000000..68df90d38b --- /dev/null +++ b/media-sound/tidal-hifi-bin/tidal-hifi-bin-5.17.0.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN="${PN/-bin/}" + +CHROMIUM_LANGS=" + af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi + hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv + sw ta te th tr uk ur vi zh-CN zh-TW +" + +inherit chromium-2 desktop linux-info unpacker xdg + +DESCRIPTION="Web version of Tidal running in electron with Hi-Fi support thanks to Widevine." +HOMEPAGE="https://github.com/Mastermindzh/tidal-hifi" +SRC_URI="https://github.com/Mastermindzh/tidal-hifi/releases/download/${PV}/tidal-hifi-${PV}.tar.gz -> ${P}.tar.gz" + +S="${WORKDIR}/${MY_PN}-${PV}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="wayland" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/libgcrypt + dev-libs/nspr + dev-libs/nss + media-libs/alsa-lib + media-libs/fontconfig + media-libs/mesa[gbm(+)] + net-print/cups + sys-apps/dbus + sys-apps/util-linux + sys-libs/glibc + x11-libs/cairo + x11-libs/libdrm + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXScrnSaver + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxshmfence + x11-libs/pango +" + +DESTDIR="/opt/${PN}" + +QA_PREBUILT="*" + +CONFIG_CHECK="~USER_NS" + +src_configure() { + default + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + # cleanup languages + pushd "locales/" >/dev/null || die "location change for language cleanup failed" + chromium_remove_language_paks + popd >/dev/null || die "location reset for language cleanup failed" + rm -rf "${S}"/resources/app.asar.unpacked/node_modules/{abstract-socket,register-scheme}/build/node_gyp_bins || die +} + +src_install() { + doicon -s 256 "${FILESDIR}/${MY_PN}.png" + + local EXEC_EXTRA_FLAGS=() + if use wayland; then + EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" ) + fi + + sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \ + "${FILESDIR}/tidal-hifi.desktop" \ + > "${T}/tidal-hifi.desktop" || die + + domenu "${T}/tidal-hifi.desktop" + + exeinto "${DESTDIR}" + + doexe "${MY_PN}" chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so + + insinto "${DESTDIR}" + doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin v8_context_snapshot.bin + insopts -m0755 + doins -r locales resources + + # Chrome-sandbox requires the setuid bit to be specifically set. + # see https://github.com/electron/electron/issues/17972 + fowners root "${DESTDIR}/chrome-sandbox" + fperms 4711 "${DESTDIR}/chrome-sandbox" + + [[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler + + dosym -r "${DESTDIR}/${MY_PN}" "/usr/bin/${MY_PN}" +}