From a019dd702abc8556a807cc81ce526a2380a8bd9d Mon Sep 17 00:00:00 2001 From: "Andreas K. Hüttel" Date: Wed, 27 Apr 2022 17:25:01 +0200 Subject: net-im/zoom: copy from main tree MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas K. Hüttel --- net-im/zoom/Manifest | 2 + net-im/zoom/files/README.gentoo | 8 ++ net-im/zoom/metadata.xml | 24 +++++ net-im/zoom/zoom-5.10.3.2778.ebuild | 179 ++++++++++++++++++++++++++++++++++++ net-im/zoom/zoom-5.10.4.2845.ebuild | 179 ++++++++++++++++++++++++++++++++++++ 5 files changed, 392 insertions(+) create mode 100644 net-im/zoom/Manifest create mode 100644 net-im/zoom/files/README.gentoo create mode 100644 net-im/zoom/metadata.xml create mode 100644 net-im/zoom/zoom-5.10.3.2778.ebuild create mode 100644 net-im/zoom/zoom-5.10.4.2845.ebuild diff --git a/net-im/zoom/Manifest b/net-im/zoom/Manifest new file mode 100644 index 0000000..2478019 --- /dev/null +++ b/net-im/zoom/Manifest @@ -0,0 +1,2 @@ +DIST zoom-5.10.3.2778_x86_64.tar.xz 129857964 BLAKE2B e682a75cf0abd1974dff77f70b1abb2138a338677b2d4dea1455b1ba05aef76ce574da51bb8fd40575bef51dab6cc4f54416cf1e894fc8bb0f308a4362183bce SHA512 3736b4688769adc616ccefbc0697804906725c655ba72b1eab7f6809fa6793f19f208a94328fe95c44aa765efe59f5fcf57d562c8c8c81046cd15b188a276c52 +DIST zoom-5.10.4.2845_x86_64.tar.xz 129882272 BLAKE2B e1d1e4aa460e56afc906ec2a0b9f8fd3c4ef40bfcc303993b01bde8d84f9935ab867c1527922771c19df451c4452b3838bcb262fbd43bcb65c2b35c021c56c07 SHA512 60115858e391c064893cdb85362fba733c48326acc8bb46e01fd8d6b1875ec0f2b53bf9c85b64a0d33456a781a9c613208705fa4cf03d87959d5254caf00c14f diff --git a/net-im/zoom/files/README.gentoo b/net-im/zoom/files/README.gentoo new file mode 100644 index 0000000..12e5058 --- /dev/null +++ b/net-im/zoom/files/README.gentoo @@ -0,0 +1,8 @@ +Some of Zoom's screen share features (e.g., the whiteboard) require +display compositing. If you encounter a black window when sharing +the screen, then one of the following actions should help: +- Enable compositing in your window manager if it is supported +- Alternatively, run the xcompmgr command (from x11-misc/xcompmgr) + +To enable screen sharing on GNOME Wayland, edit ~/.config/zoomus.conf +and change the value of enableWaylandShare to true. diff --git a/net-im/zoom/metadata.xml b/net-im/zoom/metadata.xml new file mode 100644 index 0000000..641677f --- /dev/null +++ b/net-im/zoom/metadata.xml @@ -0,0 +1,24 @@ + + + + + ulm@gentoo.org + + + dilfridge@gentoo.org + + + mva@gentoo.org + + + + Use bundled libturbojpeg instead of media-libs/libjpeg-turbo + + + Use bundled Qt and icu instead of system-wide libs + + + Use OpenCL for virtual background support (virtual/opencl) + + + diff --git a/net-im/zoom/zoom-5.10.3.2778.ebuild b/net-im/zoom/zoom-5.10.3.2778.ebuild new file mode 100644 index 0000000..fb4a054 --- /dev/null +++ b/net-im/zoom/zoom-5.10.3.2778.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop 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 opencl pulseaudio wayland" +RESTRICT="mirror bindist strip" + +RDEPEND="!games-engines/zoom + app-accessibility/at-spi2-atk + app-accessibility/at-spi2-core + dev-libs/atk + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + >=dev-libs/quazip-1.0:0= + media-libs/alsa-lib + media-libs/fdk-aac:0/2 + media-libs/fontconfig + media-libs/freetype + media-libs/mesa[gbm(+)] + media-sound/mpg123 + net-print/cups + sys-apps/dbus + sys-apps/util-linux + || ( >=sys-libs/glibc-2.34[-clone3(+)] =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/qtsvg:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + wayland? ( dev-qt/qtwayland ) + )" + +BDEPEND="dev-util/bbe + bundled-libjpeg-turbo? ( dev-util/patchelf )" + +QA_PREBUILT="opt/zoom/*" + +src_prepare() { + default + + # The tarball doesn't contain an icon, so extract it from the binary + bbe -s -b '/\n/' -e 'J 1;D' zoom \ + >videoconference-zoom.svg && [[ -s videoconference-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 + + if use bundled-libjpeg-turbo; then + # Remove insecure RPATH from bundled lib + patchelf --remove-rpath libturbojpeg.so || die + fi +} + +src_install() { + insinto /opt/zoom + exeinto /opt/zoom + doins -r cef json ringtone scheduler sip timezones translations + doins *.pcm Embedded.properties version.txt + doexe zoom zopen ZoomLauncher *.sh + dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libmpg123.so + dosym -r "/usr/$(get_libdir)/libfdk-aac.so.2" /opt/zoom/libfdkaac2.so + dosym -r "/usr/$(get_libdir)/libquazip1-qt5.so" /opt/zoom/libquazip.so + + if use opencl; then + doexe aomhost libaomagent.so libclDNN64.so libmkldnn.so + dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libOpenCL.so.1 + fi + + if use bundled-libjpeg-turbo; then + doexe libturbojpeg.so + else + dosym -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* bearer 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 QtQuick/LocalStorage QtQuick/Particles.2 \ + QtQuick/Scene2D QtQuick/Scene3D QtQuick/XmlListModel \ + platforms/libqeglfs.so platforms/libqlinuxfb.so || die + use wayland || rm -r libQt5Wayland*.so* QtWayland wayland* \ + platforms/libqwayland*.so || die + ) + else + local qtzoom="5.12" qtver=$(best_version dev-qt/qtcore:5) + if [[ ${qtver} != dev-qt/qtcore-${qtzoom}.* ]]; then + ewarn "You have disabled the bundled-qt USE flag." + ewarn "You may experience problems when running Zoom with" + ewarn "a version of the system-wide Qt libs other than ${qtzoom}." + ewarn "See https://bugs.gentoo.org/798681 for details." + fi + fi + + make_wrapper zoom /opt/zoom{/zoom,} /opt/zoom:/opt/zoom/cef + make_desktop_entry "zoom %U" Zoom videoconference-zoom \ + "Network;VideoConference;" \ + "MimeType=$(printf '%s;' \ + x-scheme-handler/zoommtg \ + x-scheme-handler/zoomus \ + application/x-zoom)" + doicon videoconference-zoom.svg + doicon -s scalable videoconference-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} -lt 5.7.28852.0718 && use wayland && FORCE_PRINT_ELOG=1 + done + readme.gentoo_print_elog +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} diff --git a/net-im/zoom/zoom-5.10.4.2845.ebuild b/net-im/zoom/zoom-5.10.4.2845.ebuild new file mode 100644 index 0000000..fb4a054 --- /dev/null +++ b/net-im/zoom/zoom-5.10.4.2845.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop 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 opencl pulseaudio wayland" +RESTRICT="mirror bindist strip" + +RDEPEND="!games-engines/zoom + app-accessibility/at-spi2-atk + app-accessibility/at-spi2-core + dev-libs/atk + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + >=dev-libs/quazip-1.0:0= + media-libs/alsa-lib + media-libs/fdk-aac:0/2 + media-libs/fontconfig + media-libs/freetype + media-libs/mesa[gbm(+)] + media-sound/mpg123 + net-print/cups + sys-apps/dbus + sys-apps/util-linux + || ( >=sys-libs/glibc-2.34[-clone3(+)] =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/qtsvg:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + wayland? ( dev-qt/qtwayland ) + )" + +BDEPEND="dev-util/bbe + bundled-libjpeg-turbo? ( dev-util/patchelf )" + +QA_PREBUILT="opt/zoom/*" + +src_prepare() { + default + + # The tarball doesn't contain an icon, so extract it from the binary + bbe -s -b '/\n/' -e 'J 1;D' zoom \ + >videoconference-zoom.svg && [[ -s videoconference-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 + + if use bundled-libjpeg-turbo; then + # Remove insecure RPATH from bundled lib + patchelf --remove-rpath libturbojpeg.so || die + fi +} + +src_install() { + insinto /opt/zoom + exeinto /opt/zoom + doins -r cef json ringtone scheduler sip timezones translations + doins *.pcm Embedded.properties version.txt + doexe zoom zopen ZoomLauncher *.sh + dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libmpg123.so + dosym -r "/usr/$(get_libdir)/libfdk-aac.so.2" /opt/zoom/libfdkaac2.so + dosym -r "/usr/$(get_libdir)/libquazip1-qt5.so" /opt/zoom/libquazip.so + + if use opencl; then + doexe aomhost libaomagent.so libclDNN64.so libmkldnn.so + dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libOpenCL.so.1 + fi + + if use bundled-libjpeg-turbo; then + doexe libturbojpeg.so + else + dosym -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* bearer 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 QtQuick/LocalStorage QtQuick/Particles.2 \ + QtQuick/Scene2D QtQuick/Scene3D QtQuick/XmlListModel \ + platforms/libqeglfs.so platforms/libqlinuxfb.so || die + use wayland || rm -r libQt5Wayland*.so* QtWayland wayland* \ + platforms/libqwayland*.so || die + ) + else + local qtzoom="5.12" qtver=$(best_version dev-qt/qtcore:5) + if [[ ${qtver} != dev-qt/qtcore-${qtzoom}.* ]]; then + ewarn "You have disabled the bundled-qt USE flag." + ewarn "You may experience problems when running Zoom with" + ewarn "a version of the system-wide Qt libs other than ${qtzoom}." + ewarn "See https://bugs.gentoo.org/798681 for details." + fi + fi + + make_wrapper zoom /opt/zoom{/zoom,} /opt/zoom:/opt/zoom/cef + make_desktop_entry "zoom %U" Zoom videoconference-zoom \ + "Network;VideoConference;" \ + "MimeType=$(printf '%s;' \ + x-scheme-handler/zoommtg \ + x-scheme-handler/zoomus \ + application/x-zoom)" + doicon videoconference-zoom.svg + doicon -s scalable videoconference-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} -lt 5.7.28852.0718 && use wayland && FORCE_PRINT_ELOG=1 + done + readme.gentoo_print_elog +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} -- cgit v1.2.3-65-gdbad