summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www-client/opera/Manifest1
-rw-r--r--www-client/opera/opera-78.0.4093.147.ebuild133
2 files changed, 134 insertions, 0 deletions
diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest
index 6c12d130488c..ee947a52d81d 100644
--- a/www-client/opera/Manifest
+++ b/www-client/opera/Manifest
@@ -1,2 +1,3 @@
DIST opera-ffmpeg-codecs-92.0.4515.20.tar.xz 1382256 BLAKE2B 1e00bb4ee655573ac7b6c2f04ae2ae9a073f839ff6deeba3e3c4c2c58a10b1152068f0549fb3c6de758628317ad7c568cf5d3031294208800b470e3ed00c938b SHA512 6aeec66a9fcea1fcf5ecfd23b56589598f5e612e788b4e417037250470b83f91e461e3b0c20caf7853677d314053ca9d489983736708f15d21a82d68d2cdd5c2
DIST opera-stable_78.0.4093.112_amd64.deb 77000156 BLAKE2B a584e2a9d70f261ad7fe24bff54c00a8cf75e05c919ec6d34f365d50aca1814ef792ee0cf99292226b8faf1ef4b5f64554c348011ec10b45f00cf6d145a591aa SHA512 6b393c67f0469d219d07b24dd1c0cb2103d470a1185845543cc68bc7be8e32296010855152fdb9140b7cac7be7e25cda8f140480349ef585b737e9b6a333d8ce
+DIST opera-stable_78.0.4093.147_amd64.deb 77024096 BLAKE2B 539c2ee2e8e26a54ec307f9111f39403dd0dd57ac3a0f0d3e25266b7bdca564d9b4fff6da8612cdb1c7a89493dd8723e92f52e69763675b9dbec85bcf037e4a4 SHA512 75f37ffe4488d9420a9345133acbe128b710817b836ba968bd83ec77b971e2b87a0d92c3b6ead1a1b90b83019c32642e500d13a5261e3f5eba7b64198f4f7141
diff --git a/www-client/opera/opera-78.0.4093.147.ebuild b/www-client/opera/opera-78.0.4093.147.ebuild
new file mode 100644
index 000000000000..594149daa386
--- /dev/null
+++ b/www-client/opera/opera-78.0.4093.147.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CHROMIUM_LANGS="
+ be bg bn ca cs da de el en-GB en-US es-419 es fil fi fr-CA 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
+"
+inherit chromium-2 multilib pax-utils unpacker xdg
+
+DESCRIPTION="A fast and secure web browser"
+HOMEPAGE="https://www.opera.com/"
+LICENSE="OPERA-2018"
+SLOT="0"
+
+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
+
+KEYWORDS="-* ~amd64"
+
+FFMPEG_VERSION="92.0.4515.20"
+
+SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.deb}
+ proprietary-codecs? (
+ https://dev.gentoo.org/~sultan/distfiles/www-client/opera/opera-ffmpeg-codecs-${FFMPEG_VERSION}.tar.xz
+ )"
+
+IUSE="+proprietary-codecs suid"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ app-accessibility/at-spi2-atk:2
+ app-accessibility/at-spi2-core:2
+ dev-libs/atk
+ 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
+ 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
+"
+
+QA_PREBUILT="*"
+S=${WORKDIR}
+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
+ unpacker
+
+ # move to /opt, bug #573052
+ mkdir -p "${OPERA_HOME%${PN}}"
+ mv "usr/lib/x86_64-linux-gnu/${PN}" "${OPERA_HOME%${PN}}" || die
+ rm -r "usr/lib" || die
+
+ # disable auto update
+ rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die
+
+ 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
+
+ # 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
+ mv lib_extra "${OPERA_HOME}"
+ 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"
+}