diff options
author | Ulrich Müller <ulm@gentoo.org> | 2020-12-10 21:35:04 +0100 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2020-12-10 21:35:38 +0100 |
commit | 233562d771e24e722fbef1e45711895efe58d4a4 (patch) | |
tree | f725c0ce6fb5576ee104582ac949d70c65623f07 /net-im | |
parent | dev-php/pecl-yaml: Drop old (diff) | |
download | gentoo-233562d771e24e722fbef1e45711895efe58d4a4.tar.gz gentoo-233562d771e24e722fbef1e45711895efe58d4a4.tar.bz2 gentoo-233562d771e24e722fbef1e45711895efe58d4a4.zip |
net-im/zoom: Extract official icon from the binary.
Bug: https://bugs.gentoo.org/759253
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Diffstat (limited to 'net-im')
-rw-r--r-- | net-im/zoom/zoom-5.4.56259.1207-r1.ebuild | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/net-im/zoom/zoom-5.4.56259.1207-r1.ebuild b/net-im/zoom/zoom-5.4.56259.1207-r1.ebuild new file mode 100644 index 000000000000..7387cd5dde5d --- /dev/null +++ b/net-im/zoom/zoom-5.4.56259.1207-r1.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop eapi8-dosym readme.gentoo-r1 wrapper xdg-utils + +DESCRIPTION="Video conferencing and web conferencing service" +HOMEPAGE="https://zoom.us/" +SRC_URI="https://zoom.us/client/${PV}/${PN}_x86_64.tar.xz -> ${P}_x86_64.tar.xz" +S="${WORKDIR}/${PN}" + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="-* ~amd64" +IUSE="bundled-libjpeg-turbo +bundled-qt pulseaudio wayland" +RESTRICT="mirror bindist strip" + +RDEPEND="!games-engines/zoom + dev-libs/glib:2 + dev-libs/quazip + media-libs/fontconfig + media-libs/freetype + media-sound/mpg123 + sys-apps/dbus + sys-apps/util-linux + virtual/opengl + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon[X] + x11-libs/libXrender + x11-libs/libXtst + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + pulseaudio? ( media-sound/pulseaudio ) + !pulseaudio? ( media-libs/alsa-lib ) + wayland? ( dev-libs/wayland ) + !bundled-libjpeg-turbo? ( >=media-libs/libjpeg-turbo-2.0.5 ) + !bundled-qt? ( + dev-libs/icu + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtdeclarative:5[widgets] + dev-qt/qtdiag:5 + dev-qt/qtgraphicaleffects:5 + dev-qt/qtgui:5 + dev-qt/qtlocation:5 + dev-qt/qtnetwork:5 + dev-qt/qtquickcontrols:5[widgets] + dev-qt/qtquickcontrols2:5 + dev-qt/qtscript:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + wayland? ( dev-qt/qtwayland ) + )" + +BDEPEND="dev-util/bbe" + +QA_PREBUILT="opt/zoom/*" + +src_prepare() { + default + + # The tarball doesn't contain an icon, so extract it from the binary + bbe -s -b '/<svg width="32"/:/<\x2fsvg>\n/' -e 'J 1;D' zoom >zoom.svg \ + && [[ -s zoom.svg ]] || die "Extraction of icon failed" + + if ! use pulseaudio; then + # For some strange reason, zoom cannot use any ALSA sound devices if + # it finds libpulse. This causes breakage if media-sound/apulse[sdk] + # is installed. So, force zoom to ignore libpulse. + bbe -e 's/libpulse.so/IgNoRePuLsE/' zoom >zoom.tmp || die + mv zoom.tmp zoom || die + fi +} + +src_install() { + insinto /opt/zoom + exeinto /opt/zoom + doins -r json ringtone sip timezones translations + doins *.pcm *.sh Embedded.properties version.txt + doexe zoom zoom.sh zopen ZoomLauncher + dosym8 -r {"/usr/$(get_libdir)",/opt/zoom}/libmpg123.so + dosym8 -r {"/usr/$(get_libdir)",/opt/zoom}/libquazip.so + + if use bundled-libjpeg-turbo; then + doexe libturbojpeg.so + else + dosym8 -r {"/usr/$(get_libdir)",/opt/zoom}/libturbojpeg.so + fi + + if use bundled-qt; then + doexe libicu*.so.56 libQt5*.so.5 + doins qt.conf + + local dirs="Qt* generic iconengines imageformats \ + platforminputcontexts platforms wayland* xcbglintegrations" + doins -r ${dirs} + find ${dirs} -type f '(' -name '*.so' -o -name '*.so.*' ')' \ + -printf '/opt/zoom/%p\0' | xargs -0 -r fperms 0755 || die + + ( # Remove libs and plugins with unresolved soname dependencies + cd "${ED}"/opt/zoom || die + rm -r Qt/labs/location QtQml/RemoteObjects \ + QtQuick/LocalStorage QtQuick/Particles.2 QtQuick/Scene2D \ + QtQuick/Scene3D QtQuick/Shapes QtQuick/XmlListModel \ + platforms/libqeglfs.so platforms/libqlinuxfb.so || die + use wayland || rm -r libQt5Wayland*.so* QtWayland wayland* \ + platforms/libqwayland*.so || die + ) + fi + + make_wrapper zoom /opt/zoom{/zoom,} $(usex bundled-qt /opt/zoom "") + make_desktop_entry "zoom %U" Zoom zoom "" \ + "MimeType=x-scheme-handler/zoommtg;application/x-zoom;" + doicon zoom.svg + doicon -s scalable zoom.svg + readme.gentoo_create_doc +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_icon_cache_update + + local FORCE_PRINT_ELOG v + for v in ${REPLACING_VERSIONS}; do + ver_test ${v} -le 5.0.403652.0509 && FORCE_PRINT_ELOG=1 + done + readme.gentoo_print_elog + + if use bundled-libjpeg-turbo; then + ewarn "If the \"bundled-libjpeg-turbo\" flag is enabled, you may see a" + ewarn "QA notice about insecure RPATHs in the libturbojpeg.so library" + ewarn "bundled with the upstream package. Please report this problem" + ewarn "directly to Zoom upstream. Do *not* file a Gentoo bug for it." + fi +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} |