summaryrefslogtreecommitdiff
path: root/www-client/opera-beta
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/opera-beta')
-rw-r--r--www-client/opera-beta/Manifest2
-rw-r--r--www-client/opera-beta/opera-beta-114.0.5282.12.ebuild173
2 files changed, 175 insertions, 0 deletions
diff --git a/www-client/opera-beta/Manifest b/www-client/opera-beta/Manifest
index 777a31ce4764..c6e63aa6c1e2 100644
--- a/www-client/opera-beta/Manifest
+++ b/www-client/opera-beta/Manifest
@@ -1,3 +1,5 @@
DIST opera-beta_113.0.5230.26_amd64.deb 112625452 BLAKE2B ebcdfb139de9c2eb31fd10502f077012838affec9fc5f29a4b77a5b80b42ed88c27280923818719bdc15b086d0cfc464b5b449837fca4f5bf2b925bc8b8e736a SHA512 eeb53b60426bfbe2a4fac95faedbc99b4032c94aa097551f93f965d62682f2edc589fcff23204d5dce00e228ae4a02e8f130166c134b79f94a557fbb1d139959
+DIST opera-beta_114.0.5282.12_amd64.deb 114383976 BLAKE2B 5fa655e5fb52f49f527bba9a49be628dab30d60df9c04d064342359f080000615d5d579acff709d92bfe4ebcb3c357b23960e7f0de08258f6fddcf8dc915d087 SHA512 462da804c81130658e546f442baa4be2ee71f6d1ee95ddd591795ea1f32e4657657437ad456c124117b686dfb155ea7d8a16d40a4663a7234499640c7b50a8b6
EBUILD opera-beta-113.0.5230.26-r1.ebuild 4223 BLAKE2B 1c7e450aa206caa2f38233522a6e3453ac3483ad2b59b2873ee2982afe3c479a63e4855c56dd66cb62bdabcd8e57083a3dcda2ea92261f487fbbd4bb77fe7fdb SHA512 91c087a4cfb517f02d10975e43f90a089e2d151ac8770fd51fa859ad63cab3f7a1ad30e633c932abaad21bb08381889aa13ae09d8db2e366e008e609a8534494
+EBUILD opera-beta-114.0.5282.12.ebuild 4223 BLAKE2B 8927bf7b10a5b7c99654dab062b5cf2627891872f7b27b8616d2870635e6b497416fc58133e76fa006803676b4687f527a5850ebb5334f92315f38f69c2c36f6 SHA512 97f51d58b355b3a234f4f203db8ef0f81b442dc720c22a5ae475686934576e375acd550b6b504b18a7791170cdcf4dbde4f1e861c7492de8c2676a4a75a16b8d
MISC metadata.xml 544 BLAKE2B e8594a0cb9a73ac5901ece78db220822043dca9faec994810af426f96e2ece7fdb069c5f1d639f66d1236ec83e6c46e50bd21c49f8a075cf0de41c9db9afd8a0 SHA512 2361ebdde2707166e465058b41a893b4c14db7c7ba8f4fe34f7ab34da4275f0af691e55881232a9253f5d793ff76e61d57689f56dd8ab879fc3ecb3294fc8777
diff --git a/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild b/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild
new file mode 100644
index 000000000000..803a7b7c4565
--- /dev/null
+++ b/www-client/opera-beta/opera-beta-114.0.5282.12.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2024 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="128"
+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 qt5 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} )
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5[X]
+ dev-qt/qtwidgets:5
+ )
+ 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
+
+ if ! use qt5; then
+ rm "${OPERA_HOME}/libqt5_shim.so" || die
+ fi
+ 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"
+}