# Maintainer: Kirikaze Chiyuki # Maintainer: sukanka _pkgname=linuxqq _base_pkgver=3.2.7_240428 _update_pkgver=${_base_pkgver} pkgname=linuxqq-nt-bwrap pkgver="${_update_pkgver//-/_}" pkgrel=1 pkgdesc="New Linux QQ based on Electron, with bubblewrap sandbox and some tweaks" arch=('x86_64' 'aarch64' 'loong64') url='https://im.qq.com/linuxqq/index.shtml' license=('custom') depends=('at-spi2-core' 'alsa-lib' 'desktop-file-utils' 'gtk3' 'gtk-update-icon-cache' 'libnotify' 'nss' 'gnutls' 'bubblewrap' 'xdg-user-dirs' 'flatpak-xdg-utils' 'snapd-xdg-open-git' 'libvips' 'openslide' 'autoconf' 'libunwind' ) makedepends=('p7zip') optdepends=('libappindicator-gtk3: 以显示托盘图标' 'gjs: 提供 GNOME Wayland 下的截图支持') provides=('qq' 'linuxqq') conflicts=('linuxqq') options=('!emptydirs') install="${pkgname}.install" source_x86_64=("https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_${_base_pkgver}_amd64_01.deb") source_aarch64=("https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_${_base_pkgver}_arm64_01.deb") source_loong64=("https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_${_base_pkgver}_loongarch64_01.deb") source=('start.sh' 'config.json' 'xdg-open.sh') sha256sums=('bf956210c3feef339efbec3a7663dcc061a3066f038d74b1e8bd3eede780d1a5' 'bb2ec0f104da4da7422d9b0f51c71d0ab38ed2a21764a7a643ab42689e098e4b' 'f1c778b5a8b23bc77fd8e5e89056fea07309794c9a44ec38134a176cf1f7b675') sha256sums_x86_64=('53343e511238383004f3c139e1ba3c8b4ed4011659b2f35812188a3c03fff441') sha256sums_aarch64=('1bd73afdb6a0fe72bc18b76901e1e57d1b01503247b67c2c364413928d6dd7a6') sha256sums_loong64=('33869928bff7e3698d3a03021182c62b70001e7d5e28c0198d51133bd50b2f88') prepare() { local base_ver=${_base_pkgver} local cur_ver=${_update_pkgver:-${base_ver}} local build_ver=${cur_ver#*-} sed -i "s|__BASE_VER__|${base_ver}|g;s|__CURRENT_VER__|${cur_ver}|g;s|__BUILD_VER__|${build_ver}|g" config.json start.sh } package() { # 解压程序包 tar -xJ -f "data.tar.xz" -C "${pkgdir}" chmod 755 "${pkgdir}/opt/QQ/resources/app" mv "${pkgdir}/opt/QQ/qq" "${pkgdir}/opt/QQ/electron" # 打包相关处理 mkdir -p "${pkgdir}/opt/QQ/workarounds" install -Dm755 "xdg-open.sh" "${pkgdir}/opt/QQ/workarounds/xdg-open.sh" cp "${srcdir}/config.json" "${pkgdir}/opt/QQ/workarounds/config.json" # 将 LICENSE 移动到正确位置 mkdir -p "${pkgdir}/usr/share/licenses/${_pkgname}" ln -s "/opt/QQ/LICENSE.electron.txt" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE" ln -s "/opt/QQ/LICENSES.chromium.html" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSES.chromium.html" # 删除原生库 rm -f "${pkgdir}"/opt/QQ/resources/app/{libssh2.so.1,libunwind*,sharp-lib/libvips-cpp.so.42} # 对 desktop 文件做处理,使其使用正确的图标,启动 start.sh cp "${srcdir}/start.sh" "${pkgdir}/opt/QQ/start.sh" sed -i "s|/opt/QQ/qq|/opt/QQ/start.sh|" "${pkgdir}/usr/share/applications/qq.desktop" sed -i "s|Icon=/usr/share/icons/hicolor/512x512/apps/qq.png|Icon=qq|" "${pkgdir}/usr/share/applications/qq.desktop" # 这样就可以直接输入 qq 命令启动了 mkdir -p "${pkgdir}/usr/bin" ln -s "/opt/QQ/start.sh" "${pkgdir}/usr/bin/qq" }