diff options
-rw-r--r-- | net-im/zoom/Manifest | 1 | ||||
-rw-r--r-- | net-im/zoom/zoom-6.1.6.1013.ebuild | 181 |
2 files changed, 182 insertions, 0 deletions
diff --git a/net-im/zoom/Manifest b/net-im/zoom/Manifest index eabb1df63e82..c898a3b4ae14 100644 --- a/net-im/zoom/Manifest +++ b/net-im/zoom/Manifest @@ -1,2 +1,3 @@ DIST zoom-5.17.11.3835_x86_64.tar.xz 186799104 BLAKE2B 84cc1dc046742392bd41a906050ec424e431c63a94224cadb021baf0463bd73697557f7344d91a759d49e288d36bb8fa1ebaf1690d4264caccce2dbb774ff0aa SHA512 5749ad8f472ad035e307e544f648e0d6e15625c0566abc5e0d005a1784b058ebe45aa5ddd48ed52a98781cb3406b15b0cbe1b593a77bd7a203493835d83e6c32 DIST zoom-6.0.2.4680_x86_64.tar.xz 202434660 BLAKE2B b73103c759a6d41257aa31919e6d992663e1984364ee7a2d42ae61576afcb7e61c206088885f2adb076a446bec77da6fad59d40b446f37c4b3732908dc0b4982 SHA512 e8a842b281fea1f5399cb245208bed77689035226af5901e856f7d2542aa2e623a8a7f7647e312849deedac324853f945c26252d37bc0f98e8210a958e7f15fa +DIST zoom-6.1.6.1013_x86_64.tar.xz 207011804 BLAKE2B c27d62ac37ce6c8919f5252d2db3feed25819482b17954f9b4350614f67aa2a2c4c2e9a882a723d4cf32836fd72982d5323914b66e093282ebba921b708ebb1a SHA512 9ddfdbe3b9a969fa2fe9ba0cf22fa4633654a0378aebc51015dddb4a5c144838feba372e6d03e4d409c0589c3fab05073ec8b556e62aa7768790b6365a567ee0 diff --git a/net-im/zoom/zoom-6.1.6.1013.ebuild b/net-im/zoom/zoom-6.1.6.1013.ebuild new file mode 100644 index 000000000000..6e34e354ce8f --- /dev/null +++ b/net-im/zoom/zoom-6.1.6.1013.ebuild @@ -0,0 +1,181 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop linux-info readme.gentoo-r1 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-qt opencl pulseaudio wayland" +RESTRICT="mirror bindist strip" + +RDEPEND="!games-engines/zoom + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/mit-krb5 + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + >=dev-libs/quazip-1.0:0=[qt5(+)] + 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 + sys-libs/zlib + virtual/opengl + x11-libs/cairo + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon[X] + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libxshmfence + x11-libs/libXtst + x11-libs/pango + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + opencl? ( virtual/opencl ) + pulseaudio? ( media-libs/libpulse ) + wayland? ( dev-libs/wayland ) + !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 + dev-qt/qtxml:5 + wayland? ( dev-qt/qtwayland ) + )" + +BDEPEND="dev-util/bbe" + +CONFIG_CHECK="~USER_NS ~PID_NS ~NET_NS ~SECCOMP_FILTER" +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" height="32"/:/<\x2fsvg>\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 +} + +src_install() { + insinto /opt/zoom + exeinto /opt/zoom + doins -r calendar cef chatapp email json ringtone scheduler sip \ + timezones translations + doins *.pcm Embedded.properties version.txt + doexe zoom zopen ZoomLauncher ZoomWebviewHost *.sh \ + aomhost libaomagent.so libdvf.so libmkldnn.so \ + libavcodec.so* libavformat.so* libavutil.so* libswresample.so* + fperms a+x /opt/zoom/cef/chrome-sandbox + 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 libclDNN64.so + dosym -r {"/usr/$(get_libdir)",/opt/zoom}/libOpenCL.so.1 + fi + + if ! use wayland; then + # Soname dependency on libwayland-client.so.0 + rm "${ED}"/opt/zoom/cef/libGLESv2.so || die + fi + + if use bundled-qt; then + doins -r Qt + find Qt -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. + # Why does the upstream package contain such garbage? :-( + cd "${ED}"/opt/zoom/Qt || die + rm -r plugins/audio plugins/egldeviceintegrations \ + plugins/platforms/libqeglfs.so \ + plugins/platforms/libqlinuxfb.so \ + plugins/platformthemes/libqgtk3.so \ + qml/Qt/labs/lottieqt qml/QtQml/RemoteObjects \ + qml/QtQuick/LocalStorage qml/QtQuick/Particles.2 \ + qml/QtQuick/Scene2D qml/QtQuick/Scene3D \ + qml/QtQuick/XmlListModel || die + use wayland || rm -r lib/libQt5Wayland*.so* plugins/wayland* \ + plugins/platforms/libqwayland*.so qml/QtWayland || 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 + + dosym -r /opt/zoom/ZoomLauncher /usr/bin/zoom + 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 + + local DOC_CONTENTS="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: + \\n- Enable compositing in your window manager if it is supported + \\n- Alternatively, run the xcompmgr command (from x11-misc/xcompmgr)" + readme.gentoo_create_doc +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_icon_cache_update + readme.gentoo_print_elog +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} |