109 lines
2.6 KiB
Bash
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
|
|
}
|