From 561f908cbe72a0a2f966fe7dcc817fb3c318ee63 Mon Sep 17 00:00:00 2001 From: Dmitry Isaenko Date: Sun, 1 Jun 2025 14:26:05 +0300 Subject: [PATCH] add yandex 25.4.1.1062-1 --- www-client/yandex-browser/Manifest | 3 + www-client/yandex-browser/metadata.xml | 20 +++ .../yandex-browser-25.4.1.1062_p1.ebuild | 135 ++++++++++++++++++ 3 files changed, 158 insertions(+) create mode 100644 www-client/yandex-browser/Manifest create mode 100644 www-client/yandex-browser/metadata.xml create mode 100644 www-client/yandex-browser/yandex-browser-25.4.1.1062_p1.ebuild diff --git a/www-client/yandex-browser/Manifest b/www-client/yandex-browser/Manifest new file mode 100644 index 0000000..12c9fe2 --- /dev/null +++ b/www-client/yandex-browser/Manifest @@ -0,0 +1,3 @@ +DIST yandex-browser-25.4.1.1062_p1.deb 198215848 BLAKE2B 2e7c2fa6591cad7a6c8b31f87912e685064545ae1206d8069ddac701884db0d100186800aac4b01e18c874862e7ed58c5204708e98871734e2773e486521716e SHA512 7dc270e4deefdee88887a87ac64365a240228351861d1e93be7bc99fe0c7f570e119d9748a555ccd4b93fea869737e370a2ce87e37fbbcba1311c3afbea9df99 +EBUILD yandex-browser-25.4.1.1062_p1.ebuild 3582 BLAKE2B 32b9424da2e8d06be6622b905497638e8ccb40bda77aae8f686ec9109b5460982cc94bf06397864f35f80f012a2651d28d96143ac97dad6af93ad7e55ce39fbc SHA512 86aebe3d51eed828b3f90540e4d7e1097efc3c430af254e65c6da7b16875193fa6cd3b18d0cc89611b73a313d5358ff595266178d8c85c9977c1781a00cf920d +MISC metadata.xml 968 BLAKE2B a8c5c0ebc768d438fc8c64a60ec600da3793245178e8c06f4ae95c0e1ccd73b7e600db6fedb89ac1783cef70fa875019b58d33b528ab6d438e20bf2ec7353847 SHA512 6c8140444f6df6ad940ce0864f974789e352647786346ec27f94f54f72698e5ca5635997c09115903e7b7bda69ca3f6ef4cf8cacb6a44c7db5a97398c96479dd diff --git a/www-client/yandex-browser/metadata.xml b/www-client/yandex-browser/metadata.xml new file mode 100644 index 0000000..5d34f3e --- /dev/null +++ b/www-client/yandex-browser/metadata.xml @@ -0,0 +1,20 @@ + + + + + mva@gentoo.org + Vadim Misbakh-Soloviov + IRC: mva@libera; TG: @mva_name; (currently I'll probably not respond via jabber because tons of spam) + + + alex@ws54.tk + Alexander Golikov + + If you have any issues, please contact me via e-mail or jabber (same) + + + Yandex Browser is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier. + + Use media-video/ffmpeg-chromium for multi-threaded ffmpeg codecs for the HTML5 <audio> and <video> tags + + diff --git a/www-client/yandex-browser/yandex-browser-25.4.1.1062_p1.ebuild b/www-client/yandex-browser/yandex-browser-25.4.1.1062_p1.ebuild new file mode 100644 index 0000000..c4262cc --- /dev/null +++ b/www-client/yandex-browser/yandex-browser-25.4.1.1062_p1.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +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 unpacker desktop wrapper pax-utils xdg + +MY_PV="${PV/_p/-}" +if [[ ${PN} == yandex-browser ]]; then + MY_PN=${PN}-stable +else + MY_PN=${PN} +fi + +FFMPEG="133" + +DESCRIPTION="The web browser from Yandex" +HOMEPAGE="https://browser.yandex.ru/" +SRC_URI=" + amd64? ( https://repo.yandex.ru/yandex-browser/deb/pool/main/y/${MY_PN}/${MY_PN}_${MY_PV}_amd64.deb -> ${P}.deb ) +" + +S="${WORKDIR}" + +LICENSE="Yandex-EULA" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="+ffmpeg-codecs qt6" +RESTRICT="bindist mirror strip" + +RDEPEND=" + app-accessibility/at-spi2-core + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + >=dev-libs/openssl-1.0.1:0 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + net-misc/curl + net-print/cups + sys-apps/dbus + sys-libs/libcap + sys-libs/libudev-compat + virtual/libudev + x11-libs/cairo + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon + x11-libs/libXrandr + x11-libs/pango[X] + x11-misc/xdg-utils + ffmpeg-codecs? ( media-video/ffmpeg-chromium:${FFMPEG} ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) +" +DEPEND=" + >=dev-util/patchelf-0.9 +" + +QA_PREBUILT="*" +QA_DESKTOP_FILE="usr/share/applications/yandex-browser.*\\.desktop" +YANDEX_HOME="opt/${PN/-//}" + +pkg_setup() { + chromium_suid_sandbox_check_kernel_config +} + +src_unpack() { + unpack_deb ${A} +} + +src_prepare() { + rm "usr/bin/${MY_PN}" || die "Failed to remove bundled wrapper" + + rm -r etc || die "Failed to remove etc" + + rm -r "${YANDEX_HOME}/cron" || die "Failed ro remove cron hook" + + mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die "Failed to move docdir" + + gunzip "usr/share/doc/${PF}/changelog.gz" "usr/share/man/man1/${MY_PN}.1.gz" || die "Failed to decompress docs" + rm "usr/share/man/man1/${PN}.1.gz" || die + + pushd "${YANDEX_HOME}/locales" > /dev/null || die + chromium_remove_language_paks + popd > /dev/null || die + + default + + sed -r \ + -e 's|\[(NewWindow)|\[X-\1|g' \ + -e 's|\[(NewIncognito)|\[X-\1|g' \ + -e 's|^TargetEnvironment|X-&|g' \ + -e 's|-stable||g' \ + -i usr/share/applications/${PN}.desktop || die + + patchelf --remove-rpath "${S}/${YANDEX_HOME}/yandex_browser-sandbox" || die "Failed to fix library rpath (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)" +} + +src_install() { + mv * "${D}" || die + dodir /usr/$(get_libdir)/${MY_PN}/lib + mv "${D}"/usr/share/appdata "${D}"/usr/share/metainfo || die + + make_wrapper "${PN}" "./${PN}" "/${YANDEX_HOME}" "/usr/$(get_libdir)/${MY_PN}/lib" || die "Failed to mae wrapper" + + dosym "../../../usr/$(get_libdir)/chromium/libffmpeg.so.${FFMPEG}" "${YANDEX_HOME}/libffmpeg.so" + + # yandex_browser binary loads libudev.so.0 at runtime + + 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" "${MY_PN}.png" + done + + rm "${ED}/${YANDEX_HOME}/libqt5_shim.so" || die + if ! use qt6; then + rm "${ED}/${YANDEX_HOME}/libqt6_shim.so" || die + fi + + fowners root:root "/${YANDEX_HOME}/yandex_browser-sandbox" + fperms 4711 "/${YANDEX_HOME}/yandex_browser-sandbox" + pax-mark m "${ED}${YANDEX_HOME}/yandex_browser-sandbox" +}