blob: 73b7d52fa3016ce5e54d7cbd150c78cdb298ebbc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
|
# 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-videocam.svg && [[ -s zoom-videocam.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-videocam "" \
"MimeType=x-scheme-handler/zoommtg;application/x-zoom;"
doicon zoom-videocam.svg
doicon -s scalable zoom-videocam.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."
ewarn "See https://bugs.gentoo.org/715106 for further details."
fi
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}
|