summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Vanmullem2022-12-28 16:22:46 +0100
committerJan Vanmullem2022-12-28 16:22:46 +0100
commitcc5d05a902dad812f5d38c4b5d44a7ec8cecd465 (patch)
tree8cf609c6dada8d1ceb1a60852f2463e214cab876
parenteef72a09cd23c1f27de13eee237d30e6d2883afa (diff)
downloadaur-cc5d05a902dad812f5d38c4b5d44a7ec8cecd465.tar.gz
add optional systemd user service file
-rw-r--r--.SRCINFO9
-rw-r--r--PKGBUILD15
-rw-r--r--alpaca.install20
-rw-r--r--alpaca.service11
4 files changed, 48 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index aecdf6ff92d3..91f1830acb26 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,12 +1,17 @@
pkgbase = alpaca-proxy
- pkgdesc = Alpaca is a local HTTP proxy for command-line tools.
+ pkgdesc = A local HTTP proxy for command-line tools.
pkgver = 1.3.2
- pkgrel = 1
+ pkgrel = 2
url = https://github.com/samuong/alpaca
+ install = alpaca.install
arch = x86_64
license = apache
makedepends = go
source = alpaca-v1.3.2.tar.gz::https://github.com/samuong/alpaca/archive/refs/tags/v1.3.2.tar.gz
+ source = alpaca.install
+ source = alpaca.service
sha512sums = 327012d9a61c6acdfc0037cce15f389c3061bf4e0d132284ff6ce7746e5a91dc1797e131d8f2fd5b3e6c1ec7079fb17f340bd0dbf45c0be962b9b2424cae55a7
+ sha512sums = 0fa82689d3722237be1d3b0ae22e7477834656b12b36a15ef2ac7839d04b524013d8e963e412b3be17590dcf2d878905bc9b17c2751c4ad84d57f86e5c76777b
+ sha512sums = 39ecc8b4627298ee515d9274ee1436a175a11d4c1450365de5770d6933ced9bc43d4f1acee7b0557ceee533729edf019732815b4599e26bafb1d2348bb6e0d75
pkgname = alpaca-proxy
diff --git a/PKGBUILD b/PKGBUILD
index bcf57cb10dfb..251a903de952 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,13 +3,19 @@
_pkgname=alpaca
pkgname="${_pkgname}-proxy"
pkgver=1.3.2
-pkgrel=1
-pkgdesc="Alpaca is a local HTTP proxy for command-line tools."
+pkgrel=2
+pkgdesc="A local HTTP proxy for command-line tools."
license=('apache')
arch=('x86_64')
makedepends=('go')
url="https://github.com/samuong/${_pkgname}"
-source=("${_pkgname}-v${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz")
+source=("${_pkgname}-v${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz"
+ "${_pkgname}.install"
+ "${_pkgname}.service")
+install="${_pkgname}.install"
+sha512sums=('327012d9a61c6acdfc0037cce15f389c3061bf4e0d132284ff6ce7746e5a91dc1797e131d8f2fd5b3e6c1ec7079fb17f340bd0dbf45c0be962b9b2424cae55a7'
+ '0fa82689d3722237be1d3b0ae22e7477834656b12b36a15ef2ac7839d04b524013d8e963e412b3be17590dcf2d878905bc9b17c2751c4ad84d57f86e5c76777b'
+ '39ecc8b4627298ee515d9274ee1436a175a11d4c1450365de5770d6933ced9bc43d4f1acee7b0557ceee533729edf019732815b4599e26bafb1d2348bb6e0d75')
prepare() {
cd "${_pkgname}-${pkgver}"
@@ -29,6 +35,5 @@ build() {
package() {
cd "${_pkgname}-${pkgver}"
install -D -m 0755 "build/${_pkgname}" "${pkgdir}/usr/bin/$_pkgname"
+ install -D -m 0644 "${srcdir}/${_pkgname}.service" "${pkgdir}/usr/lib/systemd/user/${_pkgname}.service"
}
-
-sha512sums=('327012d9a61c6acdfc0037cce15f389c3061bf4e0d132284ff6ce7746e5a91dc1797e131d8f2fd5b3e6c1ec7079fb17f340bd0dbf45c0be962b9b2424cae55a7')
diff --git a/alpaca.install b/alpaca.install
new file mode 100644
index 000000000000..205c7085bc6e
--- /dev/null
+++ b/alpaca.install
@@ -0,0 +1,20 @@
+post_install() {
+ cat <<EOM
+:: Alpaca comes installed with a systemd user service called alpaca.service.
+ To use it, first generate your cntlm proxy hash:
+ \$ alpaca -d MYDOMAIN -u me -H
+
+ Include the generated ntlm credentials in ~/.config/alpaca.environment file.
+ A functional environment file could look similar to this:
+
+ LISTEN_ADDRESS=localhost
+ LISTEN_PORT=3128
+ NTLM_CREDENTIALS="me@DOMAIN:00000000000000000000000000000000"
+ PAC_URL="http://some.url/to/some-file.pac"
+
+EOM
+}
+
+post_upgrade() {
+ post_install
+}
diff --git a/alpaca.service b/alpaca.service
new file mode 100644
index 000000000000..62438d57ae5b
--- /dev/null
+++ b/alpaca.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Alpaca Proxy Server
+After=network.target
+
+[Service]
+EnvironmentFile=%h/.config/alpaca.environment
+ExecStart=/usr/bin/alpaca -C ${PAC_URL} -l ${LISTEN_ADDRESS} -p ${LISTEN_PORT}
+Restart=on-failure
+
+[Install]
+WantedBy=default.target