dev-db/dbeaver-bin: bump version to 24.0.4
[gentoo-zh.git] / net-im / tencent-qq / tencent-qq-3.2.7_p23159.ebuild
blobf272649a57f09461af938a287fe1498807254b47
1 # Copyright 2019-2023 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
4 EAPI=8
6 inherit unpacker xdg
8 MY_PV=${PV/_p/-}
9 _I="db6c41a0"
10 _LiteLoader_PV="1.1.1"
11 DESCRIPTION="The new version of the official linux-qq"
12 HOMEPAGE="https://im.qq.com/linuxqq/index.shtml"
14 SRC_URI="
15 amd64? ( https://dldir1.qq.com/qqfile/qq/QQNT/$_I/linuxqq_${MY_PV}_amd64.deb )
16 arm64? ( https://dldir1.qq.com/qqfile/qq/QQNT/$_I/linuxqq_${MY_PV}_arm64.deb )
17 loong? ( https://dldir1.qq.com/qqfile/qq/QQNT/$_I/linuxqq_${MY_PV}_loongarch64.deb )
18 liteloader? (
19 https://github.com/LiteLoaderQQNT/LiteLoaderQQNT/releases/download/${_LiteLoader_PV}/LiteLoaderQQNT.zip \
20 -> LiteLoaderQQNT-${_LiteLoader_PV}.zip
23 S=${WORKDIR}
24 LICENSE="Tencent"
25 SLOT="0"
26 KEYWORDS="-* ~amd64 ~arm64"
28 IUSE="+bwrap system-vips gnome appindicator liteloader"
30 RESTRICT="strip"
32 RDEPEND="
33 x11-libs/gtk+:3
34 x11-libs/libnotify
35 dev-libs/nss
36 appindicator? ( dev-libs/libayatana-appindicator )
37 x11-libs/libXScrnSaver
38 x11-libs/libXtst
39 x11-misc/xdg-utils
40 app-accessibility/at-spi2-core:2
41 app-crypt/libsecret
42 virtual/krb5
43 sys-apps/keyutils
44 system-vips? (
45 dev-libs/glib
46 >=media-libs/vips-8.15.2[-pdf]
48 bwrap? (
49 sys-apps/bubblewrap
50 x11-misc/snapd-xdg-open
51 x11-misc/flatpak-xdg-utils
53 gnome? ( dev-libs/gjs )
54 media-libs/openslide
55 loong? (
56 virtual/loong-ow-compat
59 BDEPEND="liteloader? ( app-arch/unzip )"
61 src_unpack() {
63 if use liteloader; then
64 unpack LiteLoaderQQNT-${_LiteLoader_PV}.zip
68 src_install() {
69 dodir /
70 cd "${D}" || die
71 unpacker "${DISTDIR}/linuxqq_${MY_PV}_${ARCH}".deb
73 if use system-vips; then
74 rm -r "${D}"/opt/QQ/resources/app/sharp-lib || die
77 if use bwrap; then
78 exeinto /opt/QQ
79 doexe "${FILESDIR}"/start.sh
80 sed -i 's!/opt/QQ/qq!/opt/QQ/start.sh!' "${D}"/usr/share/applications/qq.desktop || die
81 insinto /opt/QQ/workarounds
82 doins "${FILESDIR}"/{config.json,xdg-open.sh,vercmp.sh}
83 fperms +x /opt/QQ/workarounds/{xdg-open.sh,vercmp.sh}
85 local _base_pkgver=${PV/_p/-} || die
86 local _update_pkgver=${_base_pkgver} || die
87 local cur_ver=${_update_pkgver:-${base_ver}} || die
88 local build_ver=${cur_ver#*-} || die
90 sed -i "s|__BASE_VER__|${base_ver}|g;s|__CURRENT_VER__|${cur_ver}|g;s|__BUILD_VER__|${build_ver}|g" \
91 "${D}"/opt/QQ/workarounds/config.json \
92 "${D}"/opt/QQ/start.sh || die
94 else
95 sed -i 's!/opt/QQ/qq!/usr/bin/qq!' "${D}"/usr/share/applications/qq.desktop || die
98 if use bwrap; then
99 dosym -r /opt/QQ/start.sh /usr/bin/qq
100 elif use system-vips; then
101 newbin "$FILESDIR/qq.sh" qq
102 else
103 dosym -r /opt/QQ/qq /usr/bin/qq
106 # https://bugs.gentoo.org/898912
107 if use appindicator; then
108 dosym ../../usr/lib64/libayatana-appindicator3.so /opt/QQ/libappindicator3.so
111 sed -i 's!/usr/share/icons/hicolor/512x512/apps/qq.png!qq!' "${D}"/usr/share/applications/qq.desktop || die
112 gzip -d "${D}"/usr/share/doc/linuxqq/changelog.gz || die
113 dodoc "${D}"/usr/share/doc/linuxqq/changelog
114 rm -rf "${D}"/usr/share/doc/linuxqq/ || die
116 if use liteloader; then
117 insinto /opt/LiteLoader
118 doins -r "${WORKDIR}"/*
119 dosym -r /opt/LiteLoader/src/preload.js /opt/QQ/resources/app/application/preload.js
120 sed -i "1 i require(\"/opt/LiteLoader\");" "${D}"/opt/QQ/resources/app/app_launcher/index.js || die
124 pkg_postinst() {
125 xdg_pkg_postinst
126 if use bwrap; then
127 elog "If you want to download files in QQ"
128 elog "Please set the QQ download path to ~/Download"