| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 4.1.1.4 | 8 | -* ~amd64 ~arm64 ~loong | 0 |
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit unpacker desktop xdg
DESCRIPTION="Weixin for Linux"
HOMEPAGE="https://linux.weixin.qq.com"
SRC_URI="
amd64? ( https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_x86_64.deb -> wechat-${PV}_x86_64.deb )
arm64? ( https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_arm64.deb -> wechat_${PV}_arm64.deb )
loong? ( https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_LoongArch.deb -> wechat_${PV}_loongarch64.deb )
"
S=${WORKDIR}
LICENSE="all-rights-reserved"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm64 ~loong"
IUSE="bwrap fcitx ibus"
REQUIRED_USE="?? ( fcitx ibus )"
RESTRICT="strip mirror bindist"
BDEPEND="
dev-util/patchelf
"
RDEPEND="
app-accessibility/at-spi2-core
app-crypt/mit-krb5
dev-libs/nss
media-libs/libpulse
media-libs/mesa
net-print/cups
virtual/jack
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libxkbcommon[X]
x11-libs/libXrandr
x11-libs/pango
x11-libs/xcb-util-image
x11-libs/xcb-util-keysyms
x11-libs/xcb-util-renderutil
x11-libs/xcb-util-wm
bwrap? (
sys-apps/bubblewrap
x11-misc/xdg-utils
)
fcitx? ( app-i18n/fcitx )
ibus? ( app-i18n/ibus )
loong? ( virtual/loong-ow-compat )
"
QA_PREBUILT="*"
src_prepare() {
default
# add any QA scanelf alert files here.
local so_files=(
"RadiumWMPF/runtime/libilink2.so"
"RadiumWMPF/runtime/libilink_network.so"
"libilink2.so"
"libilink_network.so"
"libconfService.so"
"libvoipChannel.so"
"libvoipCodec.so"
)
for file in "${so_files[@]}"; do
patchelf --set-rpath '$ORIGIN' "opt/wechat/${file}" || die
done
}
src_install() {
dodir /opt/wechat
cp -r opt/wechat/. "${D}/opt/wechat/" || die
if use bwrap; then
newbin "${FILESDIR}/bwrap.sh" wechat
exeinto /opt/wechat
doexe "${FILESDIR}/xdg-open.sh"
else
newbin "${FILESDIR}/wechat.sh" wechat
fi
local exec_envs=( "QT_AUTO_SCREEN_SCALE_FACTOR=1" "\"QT_QPA_PLATFORM=wayland;xcb\"" )
if use fcitx; then
exec_envs+=( "QT_IM_MODULE=fcitx" )
fi
if use ibus; then
exec_envs+=( "QT_IM_MODULE=ibus" )
fi
sed -i \
-e "s|^Icon=.*|Icon=wechat|" \
-e "s|^Categories=.*|Categories=Network;InstantMessaging;Chat;|" \
-e "s|^Exec=.*|Exec=env ${exec_envs[*]} /usr/bin/wechat %U|" \
usr/share/applications/wechat.desktop || die
domenu usr/share/applications/wechat.desktop
for size in 16 32 48 64 128 256; do
doicon -s "${size}" usr/share/icons/hicolor/"${size}"x"${size}"/apps/wechat.png
done
}
pkg_postinst() {
xdg_pkg_postinst
if use bwrap; then
elog "Enabled Bubblewrap support."
elog "WeChat can only access its own sandbox home and the download directory by default."
elog "Other files should be accessed through the desktop file chooser path."
elog "Advanced users can extend the sandbox using ~/.config/wechat-bwrap-flags.conf."
fi
einfo "If you need to input Chinese in WeChat, please enable the corresponding USE flag (fcitx or ibus)."
}
app-accessibility/at-spi2-core app-crypt/mit-krb5 dev-libs/nss media-libs/libpulse media-libs/mesa net-print/cups virtual/jack x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libxkbcommon[X] x11-libs/libXrandr x11-libs/pango x11-libs/xcb-util-image x11-libs/xcb-util-keysyms x11-libs/xcb-util-renderutil x11-libs/xcb-util-wm bwrap? ( sys-apps/bubblewrap x11-misc/xdg-utils ) fcitx? ( app-i18n/fcitx ) ibus? ( app-i18n/ibus ) loong? ( virtual/loong-ow-compat )
dev-util/patchelf
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | wechat-4.1.1.4_x86_64.deb | 212327560 bytes | https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_x86_64.deb |
| DIST | wechat_4.1.1.4_arm64.deb | 189655840 bytes | https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_arm64.deb |
| DIST | wechat_4.1.1.4_loongarch64.deb | 197392640 bytes | https://dldir1v6.qq.com/weixin/Universal/Linux/WeChatLinux_LoongArch.deb |