summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDuckSoft2021-03-01 02:33:41 +0800
committerDuckSoft2021-03-01 02:35:13 +0800
commitf0c672d5f648cdb4692681691be2d06c37858b81 (patch)
tree5840cfde1405f137ece1c04cd866f705d7e4cb8e
downloadaur-f0c672d5f648cdb4692681691be2d06c37858b81.tar.gz
addpkg: trojan-r-git
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD32
-rw-r--r--trojan-r@.service16
3 files changed, 68 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..5938a2f2f938
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = trojan-r-git
+ pkgdesc = Lightweight and blazing fast Trojan-GFW/Trojan-Go implementation
+ pkgver = 0.1.0.r15
+ pkgrel = 1
+ url = https://github.com/p4gefau1t/trojan-r
+ arch = aarch64
+ arch = x86_64
+ license = GPL
+ makedepends = cargo
+ makedepends = git
+ depends = gcc-libs
+ provides = trojan-r
+ conflicts = trojan-r
+ source = trojan-r::git+https://github.com/p4gefau1t/trojan-r
+ source = trojan-r@.service
+ b2sums = SKIP
+ b2sums = 2760c08b1049d2813e9c649c67ead4366583015b04f13fd9f67987d537e6d526801ec5555056a49398a17be4e031ff525f76cffe8de76c215371848263ba7cda
+
+pkgname = trojan-r-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..0c6f4e701f66
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,32 @@
+# Maintainer: DuckSoft <realducksoft at gmail dot com>
+pkgname=trojan-r-git
+pkgver=0.1.0.r15
+pkgrel=1
+pkgdesc="Lightweight and blazing fast Trojan-GFW/Trojan-Go implementation"
+arch=(aarch64 x86_64)
+url=https://github.com/p4gefau1t/trojan-r
+license=(GPL)
+depends=(gcc-libs)
+makedepends=(cargo git)
+provides=(trojan-r)
+conflicts=(trojan-r)
+source=("${pkgname%-git}::git+$url" trojan-r@.service)
+b2sums=('SKIP'
+ '2760c08b1049d2813e9c649c67ead4366583015b04f13fd9f67987d537e6d526801ec5555056a49398a17be4e031ff525f76cffe8de76c215371848263ba7cda')
+
+pkgver() {
+ cd "$srcdir"/"${pkgname%-git}"
+ printf "%s.r%s" $(cargo pkgid | cut -d# -f2 | cut -d: -f2) $(git rev-list --count HEAD)
+}
+
+build() {
+ cd "$srcdir"/"${pkgname%-git}"
+ cargo build --release --locked --all-features --target-dir=.
+}
+
+package() {
+ cd "$srcdir"/"${pkgname%-git}"
+ install -Dm755 release/trojan-r -t "$pkgdir"/usr/bin/
+ install -Dm644 config/*.toml -t "$pkgdir"/etc/trojan-r/examples
+ install -Dm644 ../trojan-r@.service -t "$pkgdir"/usr/lib/systemd/system/
+}
diff --git a/trojan-r@.service b/trojan-r@.service
new file mode 100644
index 000000000000..6beed1d00432
--- /dev/null
+++ b/trojan-r@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Trojan-R
+Documentation=https://github.com/p4gefau1t/trojan-r
+After=network.target network-online.target nss-lookup.target
+
+[Service]
+Type=simple
+StandardError=journal
+User=nobody
+AmbientCapabilities=CAP_NET_BIND_SERVICE
+ExecStart=/usr/bin/trojan /etc/trojan-r/%i.toml
+Restart=on-failure
+RestartSec=10s
+
+[Install]
+WantedBy=multi-user.target