Files
ratigorsk-auto/media-sound/yandex-music/yandex-music-5.126.1.ebuild
T

109 lines
2.6 KiB
Bash

# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB en-US es-419 es 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 pax-utils wrapper unpacker xdg
MY_PN="${PN/-/}"
DESCRIPTION="Yandex Music streaming service"
HOMEPAGE="https://music.yandex.ru/"
SRC_URI="
amd64? ( https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_amd64_${PV}.deb -> ${P}.deb )
"
S="${WORKDIR}"
LICENSE="Yandex-Music-EULA"
SLOT="0"
KEYWORDS="-* ~amd64"
DEPEND="
>=dev-util/patchelf-0.9
"
RESTRICT="bindist mirror strip"
RDEPEND="
x11-libs/gtk+:3
x11-libs/libnotify
dev-libs/nss
x11-libs/libXScrnSaver
x11-libs/libXtst
x11-misc/xdg-utils
app-accessibility/at-spi2-core
sys-apps/util-linux
app-crypt/libsecret
"
QA_PREBUILT="*"
QA_DESKTOP_FILE="usr/share/applications/yandex-music.*\\.desktop"
YANDEX_HOME="opt/${PN}"
pkg_setup() {
chromium_suid_sandbox_check_kernel_config
}
src_unpack() {
unpack_deb ${A}
mv -T "${S}/opt/Яндекс Музыка" "${S}/${YANDEX_HOME}" || die
mv -T "${S}/usr/share/doc/${MY_PN}" "${S}/usr/share/doc/${PF}" || die
}
src_prepare() {
default
sed -i -e "s|/opt/Яндекс Музыка/${MY_PN}|/opt/bin/${PN}|" \
-i -e "s/Audio;/AudioVideo;/" \
"${S}/usr/share/applications/${MY_PN}.desktop" || die
sed -i -e "s|/opt/Яндекс Музыка|/${YANDEX_HOME}|" \
"${S}/${YANDEX_HOME}"/resources/apparmor-profile || die
gunzip "usr/share/doc/${PF}/changelog.gz" || die "Failed to decompress docs"
# TODO: we want this to be around as it says to update but we need to fix
# it to avoid the sudo request on exit
#rm "${S}/${YANDEX_HOME}"/resources/app-update.yml || die
pushd "${YANDEX_HOME}/locales" > /dev/null || die
chromium_remove_language_paks
popd > /dev/null || die
patchelf --remove-rpath "${S}/${YANDEX_HOME}/chrome-sandbox" \
|| die "Failed to fix library rpath (chrome-sandbox)"
patchelf --remove-rpath "${S}/${YANDEX_HOME}/${MY_PN}" \
|| die "Failed to fix library rpath (yandexmusic)"
}
src_install() {
insinto /opt
doins -r opt/*
insinto /usr
doins -r usr/*
insinto /
make_wrapper ${PN} "/${YANDEX_HOME}/${MY_PN}" "" "/${YANDEX_HOME}" "/opt/bin/"
fowners root:root "/${YANDEX_HOME}/${MY_PN}"
fperms 4711 "/${YANDEX_HOME}/chrome-sandbox"
pax-mark m "${ED}${YANDEX_HOME}/chrome-sandbox"
fperms 755 "/${YANDEX_HOME}/${MY_PN}"
}
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}