parent
7ed6776e1c
commit
8c5db8935b
@ -0,0 +1,153 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
CHROMIUM_LANGS="cs de en-US es fr it ja kk pt-BR pt-PT ru tr uk uz zh-CN zh-TW"
|
||||
inherit chromium-2 desktop unpacker pax-utils xdg
|
||||
|
||||
DESCRIPTION="The web browser from Yandex"
|
||||
HOMEPAGE="https://browser.yandex.ru/"
|
||||
LICENSE="Yandex-EULA"
|
||||
SLOT="0"
|
||||
|
||||
KEYWORDS="amd64"
|
||||
IUSE="+ffmpeg-codecs"
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
if [[ ${PN} == yandex-browser-beta ]] ; then
|
||||
suffix=beta
|
||||
MY_PN="yandex-browser-beta"
|
||||
|
||||
elif [[ ${PN} == yandex-browser-stable ]] ; then
|
||||
suffix=stable
|
||||
MY_PN="yandex-browser"
|
||||
fi
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( https://repo.yandex.ru/yandex-browser/deb/pool/main/y/yandex-browser-${suffix}/yandex-browser-${suffix}_${PV}-1_amd64.deb -> ${P}.deb )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
!!www-client/yandex-browser-beta
|
||||
app-accessibility/at-spi2-atk:2
|
||||
app-accessibility/at-spi2-core:2
|
||||
app-misc/ca-certificates
|
||||
dev-libs/atk
|
||||
dev-libs/expat
|
||||
dev-libs/glib:2
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
media-fonts/liberation-fonts
|
||||
media-libs/alsa-lib
|
||||
media-libs/mesa[gbm(+)]
|
||||
net-misc/curl[ssl]
|
||||
net-misc/wget
|
||||
net-print/cups
|
||||
sys-apps/dbus
|
||||
sys-apps/util-linux
|
||||
sys-libs/glibc
|
||||
virtual/libudev
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:3[X]
|
||||
x11-libs/libdrm
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcomposite
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-libs/libxkbcommon
|
||||
x11-libs/libxkbfile
|
||||
x11-libs/pango
|
||||
x11-misc/xdg-utils
|
||||
ffmpeg-codecs? (
|
||||
app-misc/jq
|
||||
>=sys-libs/glibc-2.34
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
>=dev-util/patchelf-0.9
|
||||
"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
QA_DESKTOP_FILE="usr/share/applications/.*\\.desktop"
|
||||
S=${WORKDIR}
|
||||
YANDEX_HOME="opt/${MY_PN/-//}"
|
||||
|
||||
pkg_setup() {
|
||||
chromium_suid_sandbox_check_kernel_config
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack_deb ${A}
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
rm -r etc || die
|
||||
|
||||
rm -r "${YANDEX_HOME}/cron" || die
|
||||
|
||||
gzip -d usr/share/doc/${PN}/changelog.gz || die
|
||||
gzip -d usr/share/man/man1/${PN}.1.gz || die
|
||||
if [[ -L usr/share/man/man1/${PN}.1.gz ]]; then
|
||||
rm usr/share/man/man1/${PN}.1.gz || die
|
||||
dosym ${PN}.1 usr/share/man/man1/${PN}.1
|
||||
fi
|
||||
|
||||
# Remove symbolic link
|
||||
if [[ -L usr/share/man/man1/${MY_PN}.1.gz ]]; then
|
||||
rm usr/share/man/man1/${MY_PN}.1.gz || die
|
||||
fi
|
||||
|
||||
mv usr/share/doc/${PN} usr/share/doc/${PN}-${PVR} || die
|
||||
|
||||
# Fix Gentoo bug https://bugs.gentoo.org/709450
|
||||
mv usr/share/appdata usr/share/metainfo
|
||||
|
||||
pushd "${YANDEX_HOME}/locales" > /dev/null || die
|
||||
chromium_remove_language_paks
|
||||
popd > /dev/null || die
|
||||
|
||||
default
|
||||
|
||||
patchelf --remove-rpath "${S}/${YANDEX_HOME}/yandex_browser-sandbox" || die "Failed to fix library rpath (yandex_browser-sandbox)"
|
||||
patchelf --remove-rpath "${S}/${YANDEX_HOME}/yandex_browser" || die "Failed to fix library rpath (yandex_browser)"
|
||||
patchelf --remove-rpath "${S}/${YANDEX_HOME}/find_ffmpeg" || die "Failed to fix library rpath (find_ffmpeg)"
|
||||
patchelf --remove-rpath "${S}/${YANDEX_HOME}/nacl_helper" || die "Failed to fix library rpath (nacl_helper)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
mv * "${D}" || die
|
||||
dodir "/usr/$(get_libdir)/${PN}/lib"
|
||||
|
||||
# yandex_browser binary loads libudev.so at runtime
|
||||
dosym "${EPREFIX}/usr/$(get_libdir)/libudev.so" "${EPREFIX}/usr/$(get_libdir)/${PN}/lib/libudev.so.0"
|
||||
|
||||
keepdir "${EPREFIX}/${YANDEX_HOME}"
|
||||
for icon in "${D}/${YANDEX_HOME}/product_logo_"*.png; do
|
||||
size="${icon##*/product_logo_}"
|
||||
size=${size%.png}
|
||||
dodir "/usr/share/icons/hicolor/${size}x${size}/apps"
|
||||
newicon -s ${size} "$icon" ${PN}.png
|
||||
done
|
||||
|
||||
fowners root:root "${EPREFIX}/${YANDEX_HOME}/yandex_browser-sandbox"
|
||||
fperms 4711 "${EPREFIX}/${YANDEX_HOME}/yandex_browser-sandbox"
|
||||
pax-mark m "${YANDEX_HOME}/yandex_browser-sandbox"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
if use ffmpeg-codecs; then
|
||||
bash "/${YANDEX_HOME}/update-ffmpeg" && elog "Ffmpeg codec update for yandex-browser completed"
|
||||
else
|
||||
ewarn "For a complete support for video and audio in the HTML5 format"
|
||||
ewarn "see: https://yandex.ru/support/browser/working-with-files/video.html#problems__video-linux"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
}
|
Loading…
Reference in new issue