diff options
| -rw-r--r-- | www-client/opera-beta/Manifest | 1 | ||||
| -rw-r--r-- | www-client/opera-beta/opera-beta-119.0.5497.17.ebuild | 166 |
2 files changed, 167 insertions, 0 deletions
diff --git a/www-client/opera-beta/Manifest b/www-client/opera-beta/Manifest index d94068703a98..18487c0b411f 100644 --- a/www-client/opera-beta/Manifest +++ b/www-client/opera-beta/Manifest @@ -1,4 +1,5 @@ DIST opera-beta_118.0.5461.21_amd64.deb 128227768 BLAKE2B 49d4ed2363abdeea2bbf20b5a87eb62ceed5ec34667dd7b0a74215be32b6a5af8928db5a7a5327bb669810879e796b5ee0ec442e6e7f81c08537e46b9ec25d40 SHA512 4b6ba7c85b7604751064cb41b4df66b8552f3acfd23f0c057f46e35c68888a3375e986fb626d6ac92669e35edd83c34e97f367699a01275a9c49c36e97800fff DIST opera-beta_118.0.5461.27_amd64.deb 126862476 BLAKE2B c6a0b2a778cca172ae71d6e5c308758d2df0e4044554ff4dab93401a7a5e05aa102ef36d8555fbcda47f63e0d8e7322c7532b48a812bf6bb956b9ac89f134ef7 SHA512 26212a7fd6fdc353cd3fb151e7e7fda48824cf9a39ee5547b4d9a02003e646459d04766d10738632dc9bf55ef8f331ae6ac4ab785d0575cd0527e9e89c94c205 DIST opera-beta_119.0.5497.12_amd64.deb 128276420 BLAKE2B 2d9f7b3c1332c0354d7837364f173c7b487974a57f4ee20efd7d03b3a7ef2c50e4c4a67b2373beca32b09e3256fd568ed257f1eb84bb4efad08cb80e71af05df SHA512 a562a8f7d89dcfdce70e93d413e736fd5779c96f1ca38315cc8a75ce671401e83df9e8aed1f8175c72786187e1878d45e017c101a4e3ed83e399d8cfca8bfc7d +DIST opera-beta_119.0.5497.17_amd64.deb 128271784 BLAKE2B 17ed8ceaf43ad6d06f8471706f6d7d69c79da7f492cbc498fc7d594c3b4a41e0ad99d63f41ffbce54e57b2df9332304977fe65238771d70e92a7b783d3dcbebf SHA512 e5d991a72daedd094d570624e41751a63ed4c97235e3e6bc5f424a34b928a23cb548b80f2f8f7a0f239c4c4b0b3e9c699aa4cea259c0b2e132f260d0e0824e63 DIST opera-beta_119.0.5497.20_amd64.deb 128269136 BLAKE2B 7d076fe2518931cac7bda9462267489bb88a1bea5594c607d82df0d4695d11317790bd1259e83bab68964d054dc6e9ece3e5e724658d2ad97a7772b0c5ceada5 SHA512 f38605e455f6fc27f0d4dd49e8ffda7fb5ca38f0c7434f996fd5cfb3f00bc759af5ea510da12029417cb4a1a058abd487a9d3b7831b534e5ef6cb466cad6ad88 diff --git a/www-client/opera-beta/opera-beta-119.0.5497.17.ebuild b/www-client/opera-beta/opera-beta-119.0.5497.17.ebuild new file mode 100644 index 000000000000..f176df4d5a72 --- /dev/null +++ b/www-client/opera-beta/opera-beta-119.0.5497.17.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + bg bn ca cs da de el en-GB en-US es-419 es fil fi fr hi hr hu id + it ja ko lt lv ms nb nl pl pt-BR pt-PT ro ru sk sr sv sw ta te th tr uk vi + zh-CN zh-TW +" + +# These are intended for ebuild maintainer use to force RPM if DEB is not available. +: ${OPERA_FORCE_RPM=no} + +inherit chromium-2 pax-utils xdg + +if [[ ${OPERA_FORCE_RPM} == yes ]]; then + inherit rpm + OPERA_ARCHIVE_EXT="rpm" +else + inherit unpacker + OPERA_ARCHIVE_EXT="deb" +fi + +DESCRIPTION="A fast and secure web browser" +HOMEPAGE="https://www.opera.com/" + +SRC_URI_BASE=( + "https://download1.operacdn.com/pub/${PN}" + "https://download2.operacdn.com/pub/${PN}" + "https://download3.operacdn.com/pub/${PN}" + "https://download4.operacdn.com/pub/${PN}" +) + +if [[ ${PN} == opera ]]; then + MY_PN=${PN}-stable + SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" ) +else + MY_PN=${PN} +fi + +# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version +# used to select the correct ffmpeg-chromium version (corresponds to a major version of Chromium) +# Does not need to be updated for every new version of Opera, only when it breaks +CHROMIUM_VERSION="134" +SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.${OPERA_ARCHIVE_EXT}}" +S=${WORKDIR} + +LICENSE="OPERA-2018" +SLOT="0" +KEYWORDS="-* ~amd64" +IUSE="+ffmpeg-chromium +proprietary-codecs +suid qt6" +RESTRICT="bindist mirror strip" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + gnome-base/gsettings-desktop-schemas + media-libs/alsa-lib + media-libs/mesa[gbm(+)] + net-misc/curl + net-print/cups + sys-apps/dbus + sys-libs/glibc + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxshmfence + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/pango + proprietary-codecs? ( + !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] ) + ffmpeg-chromium? ( media-video/ffmpeg-chromium:${CHROMIUM_VERSION} ) + ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) +" + +QA_PREBUILT="*" +OPERA_HOME="opt/opera${PN#opera}" + +pkg_pretend() { + # Protect against people using autounmask overzealously + use amd64 || die "opera only works on amd64" +} + +pkg_setup() { + chromium_suid_sandbox_check_kernel_config +} + +src_unpack() { + : +} + +src_install() { + dodir / + cd "${ED}" || die + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + rpm_src_unpack "${A[0]}" + else + unpacker + fi + + # move to /opt, bug #573052 + mkdir -p "${OPERA_HOME%${PN}}" + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + mv "usr/lib64/${PN}" "${OPERA_HOME%${PN}}" || die + else + mv "usr/lib/x86_64-linux-gnu/${PN}" "${OPERA_HOME%${PN}}" || die + fi + rm -r "usr/lib" || die + + # disable auto update + rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die + + if [[ ${OPERA_FORCE_RPM} == yes ]]; then + rm "${OPERA_HOME}/setup_repo.sh" || die + else + rm -r "usr/share/lintian" || die + + # fix docs + mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die + gzip -d usr/share/doc/${PF}/changelog.gz || die + fi + + # fix desktop file + sed -i \ + -e 's|^TargetEnvironment|X-&|g' \ + usr/share/applications/${PN}.desktop || die + + # remove unused language packs + pushd "${OPERA_HOME}/localization" > /dev/null || die + chromium_remove_language_paks + popd > /dev/null || die + + # setup opera symlink + rm "usr/bin/${PN}" || die + dosym "../../${OPERA_HOME}/${PN}" "/usr/bin/${PN}" + + # install proprietary codecs + rm "${OPERA_HOME}/resources/ffmpeg_preload_config.json" || die + if use proprietary-codecs; then + dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so$(usex ffmpeg-chromium .${CHROMIUM_VERSION} "") \ + /${OPERA_HOME}/libffmpeg.so + fi + + rm "${OPERA_HOME}/libqt5_shim.so" || die + if ! use qt6; then + rm "${OPERA_HOME}/libqt6_shim.so" || die + fi + + # pax mark opera, bug #562038 + pax-mark m "${OPERA_HOME}/opera" + # enable suid sandbox if requested + use suid && fperms 4711 "/${OPERA_HOME}/opera_sandbox" +} |
