Skip to content

Commit

Permalink
net-im/wemeet: add 3.15.0.401
Browse files Browse the repository at this point in the history
Signed-off-by: Huang Rui <[email protected]>
  • Loading branch information
vowstar authored and liangyongxiang committed Jun 6, 2023
1 parent bd42017 commit 9626d46
Show file tree
Hide file tree
Showing 2 changed files with 127 additions and 0 deletions.
2 changes: 2 additions & 0 deletions net-im/wemeet/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
DIST wemeet-3.15.0.400_amd64.deb 163629144 BLAKE2B 6048394771949fbefae43166d2b61e671f8e9c95b10de475e3ff6291be79199099e3daa7883d47137b6db8e11f351d3a7e46587ec7c6dff40b8a4c9777ee1d57 SHA512 04a1ca6704a1ab901011c1a1d3df06178b53a1402b1a6e8076fc11fe7e19f71f383c57b2272b12d2331df6d132c47c82cc83aa414c517cd3773094476514c876
DIST wemeet-3.15.0.400_arm64.deb 148101204 BLAKE2B 5b47f059e3206ac1fc3ed7c072e9605acee2f32bb0889a68219bd1173b543b12197eda09085f166e972290ce513ad62ff45e5207d3fc7c462067dce71ac5f2b0 SHA512 8d1858890fe146d4486f8178c51886c96c285c41ad0571efd7e2f2fe6d24f257e16e8992b30cb1f06397ed0270acd448d2c4e0285d61df5a660e1e32d7405d22
DIST wemeet-3.15.0.401_amd64.deb 163616252 BLAKE2B 88eeb0a0ee2bd54e39782b72d65d9841f9a88973e2fb21f9e545ac30d3583009f018929e97d6d779303111760bdfa45945e1a5a636186db488057f4fdcdfb84d SHA512 7969c40a18ce365d4dd00f97be95d6cbf743c3082ec484e312fddf5a67945ca330a42f142bda79d3f32dded6aef9792bac89c088770d40d4921491d1fa8064cb
DIST wemeet-3.15.0.401_arm64.deb 148118796 BLAKE2B 03ff63962ea4193b9dc4c1385c3f4e76f5da0820e2c118d2237085b20e6964986e37d6b501a2b4fa7971274daea758dc64d38f3aa36ecd482d7a7f39d61233da SHA512 048b034513380f0445e13a7dfa93b998ec64b17725d883c3d221c271a4314fb2f9a50d0337b02a1f1e5f96b836ae52e6e5d6c105e3d5f71dd13d88e6da2bf39b
125 changes: 125 additions & 0 deletions net-im/wemeet/wemeet-3.15.0.401.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit desktop unpacker xdg

DESCRIPTION="Wemeet - Tencent Video Conferencing"
HOMEPAGE="https://wemeet.qq.com"

SRC_URI="
amd64? ( mirror+https://updatecdn.meeting.qq.com/cos/\
f5610901e43a837d6dfab5701024dd13/TencentMeeting_0300000000_${PV}_x86_64_default.publish.deb -> ${P}_amd64.deb )
arm64? ( mirror+https://updatecdn.meeting.qq.com/cos/\
369d6e28f19bfeaf11f13a138236f3f5/TencentMeeting_0300000000_${PV}_arm64_default.publish.deb -> ${P}_arm64.deb )
"

LICENSE="wemeet_license"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm64"

RESTRICT="bindist test"

DEPEND="
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtlocation:5
dev-qt/qtnetwork:5
dev-qt/qtpositioning:5
dev-qt/qtprintsupport:5
dev-qt/qtwebchannel:5
dev-qt/qtwebengine:5
dev-qt/qtwebsockets:5
dev-qt/qtwebview:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
dev-qt/qtxml:5
media-libs/tiff-compat:4
media-sound/pulseaudio
x11-libs/libXinerama
x11-libs/libXrandr
"
RDEPEND="${DEPEND}"
BDEPEND="dev-util/patchelf"

S="${WORKDIR}"
QA_PREBUILT="opt/${PN}/*"

src_install() {
# To fix bug, remove unused lib, use system lib instead
mv opt/${PN}/lib opt/${PN}/lib.orig || die
mkdir opt/${PN}/lib || die
cp -rf opt/${PN}/lib.orig/lib*.so opt/${PN}/lib/ || die
# Remove libQt5*, use system QT5 instead
rm -rf opt/${PN}/lib/libQt5* || die
# Add libQt5Pdf* to fix bug
cp -rf opt/${PN}/lib.orig/libQt5Pdf* opt/${PN}/lib/ || die
# Clean up
rm -r opt/${PN}/lib.orig || die
# Fix SEGFAULT with libqxcb-glx-integration
rm -r opt/wemeet/plugins/xcbglintegrations || die
# Fix RPATHs to ensure the libraries can be found
for f in $(find "opt/${PN}/bin" "opt/${PN}/plugins") ; do
[[ -f ${f} && $(od -t x1 -N 4 "${f}") == *"7f 45 4c 46"* ]] || continue
patchelf --set-rpath "/opt/${PN}/lib" ${f} || die "patchelf failed on ${f}"
done
for f in $(find "opt/${PN}/lib") ; do
[[ -f ${f} && $(od -t x1 -N 4 "${f}") == *"7f 45 4c 46"* ]] || continue
patchelf --set-rpath '$ORIGIN' ${f} || die "patchelf failed on ${f}"
done

# Force X11
# If wayland is used, wemeet will just die:
# /opt/wemeet/bin/wemeetapp: symbol lookup error:
# /usr/lib64/libwayland-cursor.so.0: undefined symbol: wl_proxy_marshal_flags
# tested with 2.8.0.3 and dev-libs/wayland-1.20.0
cat > "opt/${PN}/wemeetapp.sh" <<- EOF || die
#!/bin/sh
export XDG_SESSION_TYPE=x11
export QT_QPA_PLATFORM=xcb
export QT_AUTO_SCREEN_SCALE_FACTOR=1
export QT_STYLE_OVERRIDE=fusion # 解决使用自带qt情况下,字体颜色全白看不到的问题
export IBUS_USE_PORTAL=1 # fix ibus
FONTCONFIG_DIR=\$HOME/.config/fontconfig
unset WAYLAND_DISPLAY
# if pipewire-pulse installed
if [ -f /usr/bin/pipewire-pulse ]; then
export PULSE_LATENCY_MSEC=20 # 解决Pipewire播放声音卡顿的问题
fi;
if [ -f "/usr/bin/bwrap" ];then
mkdir -p \$FONTCONFIG_DIR
bwrap --dev-bind / / --tmpfs \$HOME/.config --ro-bind \$FONTCONFIG_DIR \$FONTCONFIG_DIR /opt/wemeet/bin/wemeetapp \$*;
else
exec /opt/wemeet/bin/wemeetapp \$*;
fi;
EOF

insinto "/opt/${PN}"
exeinto "/opt/${PN}"
doins -r opt/"${PN}"/*
doexe "opt/${PN}/wemeetapp.sh"
fperms +x "/opt/${PN}/bin/wemeetapp"
fperms +x "/opt/${PN}/bin/QtWebEngineProcess"

# put launcher into PATH
dosym "../../opt/${PN}/wemeetapp.sh" /usr/bin/wemeetapp

sed -i "s/^Icon=.*/Icon=wemeetapp/g" "usr/share/applications/wemeetapp.desktop" || die
sed -i "s/^Exec=.*/Exec=wemeetapp %u/g" "usr/share/applications/wemeetapp.desktop" || die
sed -i -e '$a Comment=Tencent Meeting Linux Client\n\' \
-e 'Comment[zh_CN]=腾讯会议Linux客户端\n\' \
-e 'Keywords=wemeet;tencent;meeting;\n' \
"usr/share/applications/wemeetapp.desktop" || die
domenu "usr/share/applications/wemeetapp.desktop"
newicon -s scalable "opt/${PN}/wemeet.svg" "wemeetapp.svg"
for i in 16 32 64 128 256; do
png_file="opt/${PN}/icons/hicolor/${i}x${i}/mimetypes/wemeetapp.png"
if [ -e "${png_file}" ]; then
newicon -s "${i}" "${png_file}" "wemeetapp.png"
fi
done
}

0 comments on commit 9626d46

Please sign in to comment.