Fix: correctly extract data.tar.gz for Tauri 2.0 structure

This commit is contained in:
aliom 2026-02-07 00:20:42 +08:00
parent e2afd1a43d
commit 29658eb43f
2 changed files with 11 additions and 7 deletions

View file

@ -1,7 +1,7 @@
pkgbase = dev-janitor-bin
pkgdesc = Dev Janitor - A developer tool management app (Binary release)
pkgver = 2.2.9
pkgrel = 1
pkgrel = 2
url = https://github.com/cocojojo5213/Dev-Janitor
arch = x86_64
license = MIT

View file

@ -2,7 +2,7 @@
pkgname=dev-janitor-bin
_pkgname=dev-janitor
pkgver=2.2.9
pkgrel=1
pkgrel=2
pkgdesc="Dev Janitor - A developer tool management app (Binary release)"
arch=('x86_64')
url="https://github.com/cocojojo5213/Dev-Janitor"
@ -11,21 +11,25 @@ depends=('gtk3' 'webkit2gtk-4.1' 'openssl' 'libappindicator-gtk3')
provides=("$_pkgname")
conflicts=("$_pkgname" "$_pkgname-git")
# ⚡️ 魔法链接:使用 'latest' 自动跳转到最新发布页,不管 Tag 叫什么
# ⚡️ 使用 'latest' 自动跳转到最新发布页
source=("https://github.com/cocojojo5213/Dev-Janitor/releases/latest/download/Dev.Janitor_${pkgver}_amd64.deb")
sha256sums=('SKIP')
package() {
# 1. 解压 deb 包
# 1. 解压 deb 包的第一层 (得到 control.tar.gz, data.tar.gz 等)
bsdtar -xf *.deb -C "$pkgdir"
# 2. 处理 data.tar.xz (如果有的话)
if [ -f "$pkgdir/data.tar.xz" ]; then
# 2. 解压真正的程序数据
# 兼容性处理Tauri 2.x 通常使用 data.tar.gz旧版或其他工具可能用 data.tar.xz
if [ -f "$pkgdir/data.tar.gz" ]; then
bsdtar -xf "$pkgdir/data.tar.gz" -C "$pkgdir"
rm "$pkgdir/data.tar.gz" "$pkgdir/control.tar.gz" "$pkgdir/debian-binary"
elif [ -f "$pkgdir/data.tar.xz" ]; then
bsdtar -xf "$pkgdir/data.tar.xz" -C "$pkgdir"
rm "$pkgdir/data.tar.xz" "$pkgdir/control.tar.xz" "$pkgdir/debian-binary"
fi
# 3. 修正权限
# 3. 修正权限 (确保安装的文件属于 root)
chown -R root:root "$pkgdir" || true
}