diff options
Diffstat (limited to 'www-client')
-rw-r--r-- | www-client/opera/Manifest | 1 | ||||
-rw-r--r-- | www-client/opera/opera-73.0.3856.344.ebuild | 139 |
2 files changed, 140 insertions, 0 deletions
diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest index c04543c5f4d0..2e0fb7011348 100644 --- a/www-client/opera/Manifest +++ b/www-client/opera/Manifest @@ -1,2 +1,3 @@ DIST opera-ffmpeg-codecs-87.0.4280.88.tar.xz 1361732 BLAKE2B 1a4fa468d472bca80e7c7f79d6dd5b4e58ff6566cea546febf3ac56fc9eb89d663d3f11a4a05883f377f7cb73101353dcfc0fba875e9300d2e2d0b749ed3232c SHA512 6f5e8616a0995b51218b5117619eac74419c5631f559ffacf71c51318e407430f1509e84114eb4945353d6a2b95097d3aae5083f73ddab76d55263e185b9c204 DIST opera-stable_73.0.3856.329_amd64.deb 70945484 BLAKE2B ccad006aa41bd660a3b93c2e8dc0afabc41a1cba9c6ea624e690a3d9bf294402b785b6b03a8d9229a939bbbb57dff67e24cd02f4ce530be19cfa3d358cfa7b65 SHA512 85d8b7436b844cda677f4e315044bc51cc569578f934954f801f9e9a61a85640038ebc6153c1669079a38ae61a0f1a1f7b772fddc08250804473f32a88abe63c +DIST opera-stable_73.0.3856.344_amd64.deb 70979096 BLAKE2B 344d62d61d4c400fd7ad630bc1547252d4c694e80314194dac74adb2314d8bfc2b85a944aa1594dd65d50314e5c056f0d66916939db0525aeeae7624714bb5b3 SHA512 72b7389cf8064ff7be1d537484267f050da6d60ca117eb5ffd7a5653169d06c8ae389ac35cd8515861a29a1d6d9912cffddd650b83527c2ea7de853f48355203 diff --git a/www-client/opera/opera-73.0.3856.344.ebuild b/www-client/opera/opera-73.0.3856.344.ebuild new file mode 100644 index 000000000000..51551e8cffa9 --- /dev/null +++ b/www-client/opera/opera-73.0.3856.344.ebuild @@ -0,0 +1,139 @@ +# 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 + KEYWORDS="-* amd64" + MY_PN=${PN}-stable + SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" ) +else + KEYWORDS="-* ~amd64" + MY_PN=${PN} +fi + +FFMPEG_VERSION="87.0.4280.88" + +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 widevine" +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 + 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/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/pango + widevine? ( www-plugins/chrome-binary-plugins ) +" + +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 + + # symlink widevine + rm "${OPERA_HOME}/resources/widevine_config.json" || die + if use widevine; then + echo "[\"${EPREFIX}/usr/$(get_libdir)/chromium-browser/WidevineCdm\"]" > \ + "${OPERA_HOME}/resources/widevine_config.json" || 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" +} |