blob: 6fc1f8301b4282349f9f706820f16fc86591aa20 (
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
|
# Maintainer: sukanka <su975853527 at gmail dot com>
pkgname=clash-meta
pkgver=1.18.2
pkgrel=7
pkgdesc="Another Clash Kernel by MetaCubeX"
arch=(x86_64)
url="https://github.com/MetaCubeX/mihomo"
license=(GPL-3.0-or-later)
depends=(clash-geoip glibc)
makedepends=(go)
backup=('etc/clash-meta/config.yaml')
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('49855c53e5717932b9cb933e7f42f58155b52a42bf7db7f35f1fb1d4baa7ee00')
prepare() {
mv "mihomo-$pkgver" "$pkgname"
cd "$pkgname"
mv .github/mihomo.service "$pkgname.service"
}
build() {
export CGO_CPPFLAGS="${CPPFLAGS}"
export CGO_CFLAGS="${CFLAGS}"
export CGO_CXXFLAGS="${CXXFLAGS}"
export CGO_LDFLAGS="${LDFLAGS}"
export CGO_ENABLED=1
cd "$pkgname"
BUILDTIME=$(date -u --rfc-3339=seconds)
LDFLAGS="-linkmode external -extldflags \"${LDFLAGS}\""
OTHER_FLAGS="-X \"github.com/metacubex/mihomo/constant.Version=${pkgver}\" \
-X \"github.com/metacubex/mihomo/constant.BuildTime=${BUILDTIME}\""
GOOS=linux go build \
-trimpath \
-buildmode=pie \
-mod=readonly \
-modcacherw \
-ldflags "$LDFLAGS $OTHER_FLAGS" \
-tags with_gvisor \
-o "$pkgname-$pkgver"
echo "u $pkgname - \"Clash-Meta Service\" - -" > "$pkgname.sysusers"
echo "d /etc/$pkgname 0755 $pkgname $pkgname -" > "$pkgname.tmpfiles"
echo "d /var/log/$pkgname 0700 $pkgname $pkgname -" >> "$pkgname.tmpfiles"
sed -i -e '/Description/s/mihomo/Clash-Meta/' \
-e "s/mihomo/$pkgname/g" \
-e "/^Type=simple/a User=$pkgname" \
-e "/^Type=simple/a Group=$pkgname" "$pkgname.service"
}
check() {
cd "$pkgname"
go test ./...
}
package() {
cd "$pkgname"
install -Dm755 "$pkgname-$pkgver" "$pkgdir/usr/bin/clash-meta"
install -Dm644 "$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
install -Dm644 "$pkgname.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
install -Dm644 docs/config.yaml "$pkgdir/etc/clash-meta/config.yaml"
install -Dm644 "$pkgname.service" "$pkgdir/usr/lib/systemd/system/$pkgname.service"
ln -s /etc/clash/Country.mmdb "$pkgdir/etc/$pkgname/Country.mmdb"
}
|