summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: ae80d50fec500edaa1856e7aa6b669d0cfc9ef9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Maintainer: kiri@vern.cc
# Contributor: sukanka<su975853527 AT gmail dot com>
pkgname=clash-verge
pkgver=1.4.10
pkgrel=1
pkgdesc="A Clash GUI based on tauri, revived"
arch=('x86_64' 'aarch64')
url="https://github.com/clash-verge-rev/clash-verge-rev"
license=('GPL3')
depends=('webkit2gtk'
         'clash-meta'
	 'clash-geoip'
         'gtk3'
         'openssl'
         'glib2'
         'gcc-libs'
         'openssl'
         'libsoup'
         'cairo'
         'hicolor-icon-theme'
         'glibc'
         'gdk-pixbuf2')
makedepends=('pnpm'
             'cargo-tauri'
             'jq'
             'moreutils'
             'rust')
optdepends=()
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz"
	"${pkgname}.desktop"
	'001-disable-updater.patch'
)

sha512sums=('9fe6676545d63768b156270d17e1bf75fef6c3d27202962faed5016d22fd237f6f223e7a917a8bd4fc6d200ea4db7614a687c930d478bdd02c1f7b0fb058ae6f'
            '2066dacf2e5e0135e6403cbfb825efcdf08bbcdc781407e6bb1fbb85143817b2b1abef641d20390ff7e5b3e91a509933e9eb17a64f9de7671445ac6d5363a44a'
            'd1e8992cc0de168930002adccf7953416dfac199ea11886043de58b0df366e4337d5ec548fa3bf8be30575596a5e71dd31960db72f9e067ff131feb756bc96c1')
options=(!lto)
prepare() {
	mv ${pkgname}-rev-${pkgver} ${pkgname}-${pkgver}
	cd $srcdir/${pkgname}-${pkgver}
	patch --strip=1 <../001-disable-updater.patch

	install -d src-tauri/sidecar
	install -d src-tauri/resources
	# empty files as placeholders
	touch src-tauri/sidecar/clash{,-meta-alpha,-meta}-${CARCH}-unknown-linux-gnu
	touch src-tauri/resources/Country.mmdb
	touch src-tauri/resources/geo{ip,site}.dat

	jq 'del(.scripts.prepare)' package.json | sponge package.json

	cd src-tauri
	# only build the excutable
	jq '.tauri.bundle.active = false' tauri.conf.json | sponge tauri.conf.json
	# disable updater
	jq '.tauri.updater.active = false' tauri.conf.json | sponge tauri.conf.json

}

build() {
	cd $srcdir/${pkgname}-${pkgver}
	# export HOME=$srcdir
	pnpm install
	pnpm run check
	cargo-tauri build
}
package() {
	cd $srcdir/${pkgname}-${pkgver}
	install -Dm755 src-tauri/target/release/${pkgname} -t ${pkgdir}/usr/bin

	install -d ${pkgdir}/usr/lib/${pkgname}/resources
	ln -sf /etc/clash/Country.mmdb -t ${pkgdir}/usr/lib/${pkgname}/resources

	install -Dm644 src/assets/image/logo.svg ${pkgdir}/usr/share/icons/hicolor/scalable/apps/${pkgname}.svg

	install -Dm644 ${srcdir}/${pkgname}.desktop -t ${pkgdir}/usr/share/applications

}