-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathwemeet-3.19.0.401.ebuild
129 lines (117 loc) · 4.29 KB
/
wemeet-3.19.0.401.ebuild
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
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit unpacker qmake-utils desktop xdg
QT5_MIN="5.15.8:5"
DESCRIPTION="Wemeet - Tencent Video Conferencing. A.k.a Tencent Meeting"
HOMEPAGE="https://meeting.tencent.com"
SRC_URI="amd64? ( https://updatecdn.meeting.qq.com/cos/bb4001c715553579a8b3e496233331d4/TencentMeeting_0300000000_${PV}_x86_64_default.publish.deb -> ${P}_x86_64.deb )
arm64? ( https://updatecdn.meeting.qq.com/cos/0f96a97b0aaea9b9d5d2c2b912ede656/TencentMeeting_0300000000_${PV}_arm64_default.publish.deb -> ${P}_arm64.deb )"
LICENSE="TencentMeetingDeclare"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm64"
IUSE="ibus wayland bundled-libs bundled-qt pipewire"
REQUIRED_USE="bundled-libs? ( bundled-qt )"
RDEPEND="dev-libs/nss
x11-libs/libX11
!bundled-libs? (
app-crypt/p11-kit[libffi]
|| ( dev-libs/openssl-compat:1.1.1 <dev-libs/openssl-3 )
dev-libs/libbsd
dev-libs/libgcrypt:0
dev-libs/libpcre:3
dev-libs/libxml2
dev-libs/openssl:=
|| ( media-libs/flac-compat:8.3.0 media-libs/flac:0/0 )
media-libs/libglvnd
media-libs/libjpeg-turbo
media-libs/libsndfile
media-libs/libvorbis
media-libs/libpulse[X,asyncns]
media-libs/tiff-compat:4
sys-apps/dbus
sys-apps/tcp-wrappers
sys-libs/libunwind
sys-libs/zlib[minizip]
virtual/udev
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libxkbcommon
x11-libs/xcb-util
)
!bundled-qt? (
dev-libs/icu
>=dev-qt/designer-${QT5_MIN}
>=dev-qt/qtcore-${QT5_MIN}
>=dev-qt/qtconcurrent-${QT5_MIN}
>=dev-qt/qtdbus-${QT5_MIN}
>=dev-qt/qtdeclarative-${QT5_MIN}
>=dev-qt/qthelp-${QT5_MIN}
>=dev-qt/qtgui-${QT5_MIN}[X,eglfs,jpeg,ibus?,linuxfb,vnc,wayland?]
>=dev-qt/qtlocation-${QT5_MIN}
>=dev-qt/qtnetwork-${QT5_MIN}
>=dev-qt/qtnetworkauth-${QT5_MIN}
>=dev-qt/qtopengl-${QT5_MIN}
>=dev-qt/qtprintsupport-${QT5_MIN}[cups]
>=dev-qt/qtquickcontrols2-${QT5_MIN}
>=dev-qt/qtscript-${QT5_MIN}[scripttools]
>=dev-qt/qtsql-${QT5_MIN}
>=dev-qt/qtscxml-${QT5_MIN}
>=dev-qt/qtsvg-${QT5_MIN}
>=dev-qt/qtspeech-${QT5_MIN}
>=dev-qt/qtx11extras-${QT5_MIN}
>=dev-qt/qtxml-${QT5_MIN}
>=dev-qt/qtxmlpatterns-${QT5_MIN}
>=dev-qt/qtwebchannel-${QT5_MIN}
>=dev-qt/qtwebengine-${QT5_MIN}
>=dev-qt/qtwebsockets-${QT5_MIN}
>=dev-qt/qtwebview-${QT5_MIN}
>=dev-qt/qtwidgets-${QT5_MIN}
)
pipewire? ( media-video/pipewire[sound-server] )
"
DEPEND=""
BDEPEND=""
S="${WORKDIR}"
QA_PREBUILT="opt/${PN}/*"
src_prepare() {
sed -e '$i Comment=Tencent Meeting Linux Client\nComment[zh_CN]=腾讯会议Linux客户端\nKeywords=wemeet;tencent;meeting;' \
-e "/Exec/c Exec=${PN} %u" -e "/Icon/c Icon=${PN}" -i usr/share/applications/${PN}app.desktop || die
default
}
install_libs() {
if use bundled-qt; then
if use arm64; then
doins -r opt/${PN}/lib/lib{ui*,wemeet*,xcast*,xnn*,desktop*,ImSDK.so,nxui*,icu*,Qt5*,qt_*,tms*,service*,Tencent*}
else
doins -r opt/${PN}/lib/lib{ui*,wemeet*,xcast*,xnn*,desktop*,ImSDK.so,nxui*,icu*,Qt5*,qt_*,tms*,service*,bugly*,crbase*,Tencent*}
fi
else
if use arm64; then
doins -r opt/${PN}/lib/lib{ui*,wemeet*,xcast*,xnn*,desktop*,ImSDK.so,nxui*,qt_*,tms*,service*,Tencent*}
else
doins -r opt/${PN}/lib/lib{ui*,wemeet*,xcast*,xnn*,desktop*,ImSDK.so,nxui*,qt_*,tms*,service*,bugly*,crbase*,Tencent*}
fi
fi
}
src_install() {
insinto /opt/${PN}
doins -r opt/${PN}/{bin,${PN}.svg}
newins "${FILESDIR}"/$(usex bundled-qt 'bundled-' '')${PN}$(usex pipewire '-pipewire' '')-3.8.0.2-app.sh ${PN}app.sh
use bundled-qt && { use bundled-libs && { doins -r opt/${PN}/{icons,lib,plugins,resources,translations}; fperms +x \
/opt/${PN}/bin/QtWebEngineProcess ; } || { fperms +x /opt/${PN}/bin/QtWebEngineProcess ; doins -r \
opt/${PN}/{plugins,resources,translations} ; insinto /opt/${PN}/lib ; install_libs ; } ; } \
|| { rm "${ED%/}"/opt/${PN}/bin/{QtWebEngineProcess,qt.conf} || die ; insinto /opt/${PN}/lib ; install_libs ; }
fperms +x /opt/${PN}/{${PN}app.sh,bin/${PN}app}
dosym -r /opt/${PN}/${PN}app.sh /usr/bin/${PN}
dosym {raw,/opt/${PN}/bin}/xcast.conf
doicon -s scalable opt/${PN}/${PN}.svg
for si in 16 32 64 128 256; do
newicon -s ${si} opt/${PN}/icons/hicolor/${si}x${si}/mimetypes/${PN}app.png ${PN}.png
done
domenu usr/share/applications/${PN}app.desktop
}