aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandre Macabies2017-01-16 19:53:23 +0100
committerAlexandre Macabies2017-01-16 19:53:23 +0100
commitb91ba8fb89353eb01fd7187a4a9654264a7c5e20 (patch)
treed2512fa41d0144d5ebcb67e816b83e6fa7a72218
parent4d12217ffe0cb5f17156b801fb1dd16ce27f8a96 (diff)
downloadaur-b91ba8fb89353eb01fd7187a4a9654264a7c5e20.tar.gz
Fix systemd service; add ZSH completion for 'camisole'
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD12
-rw-r--r--_camisole49
-rw-r--r--camisole.service2
4 files changed, 63 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 62b196f41575..c4cc9b6cb53a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,8 @@
# Generated by mksrcinfo v8
-# Mon Dec 26 20:33:28 UTC 2016
+# Mon Jan 16 18:53:19 UTC 2017
pkgbase = camisole-git
pkgdesc = An asyncio-based source compiler and test runner.
- pkgver = 0.1.r5.gea9e996
+ pkgver = 0.1.r36.gf097975
pkgrel = 1
url = https://bitbucket.org/prologin/camisole
install = camisole-git.install
@@ -31,9 +31,11 @@ pkgbase = camisole-git
source = git+https://bitbucket.org/prologin/camisole.git
source = camisole.service
source = sysusers.conf
+ source = _camisole
sha1sums = SKIP
- sha1sums = 29fc46a441a1c75cc635ed209bde983d2a61d696
+ sha1sums = 41c3fd543d03dbb0ae750140e0175a82af833347
sha1sums = 52da2781a8d90d00d2d78b02f6e593340191de84
+ sha1sums = ea2412e9068571af19537b8d1f448f1fc0c29f05
pkgname = camisole-git
diff --git a/PKGBUILD b/PKGBUILD
index 85d12edcbfbf..7accabffa56a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,6 +1,6 @@
_gitname="camisole"
pkgname=camisole-git
-pkgver=0.1.r5.gea9e996
+pkgver=0.1.r36.gf097975
pkgrel=1
pkgdesc="An asyncio-based source compiler and test runner."
arch=('any')
@@ -26,10 +26,12 @@ optdepends=('esotope-bfc-git: compile Brainfuck sources'
'php: compile PHP sources')
source=("git+${url}.git"
'camisole.service'
- 'sysusers.conf')
+ 'sysusers.conf'
+ '_camisole')
sha1sums=('SKIP'
- '29fc46a441a1c75cc635ed209bde983d2a61d696'
- '52da2781a8d90d00d2d78b02f6e593340191de84')
+ '41c3fd543d03dbb0ae750140e0175a82af833347'
+ '52da2781a8d90d00d2d78b02f6e593340191de84'
+ 'ea2412e9068571af19537b8d1f448f1fc0c29f05')
install=${pkgname}.install
pkgver() {
@@ -42,4 +44,6 @@ package() {
python setup.py install --root="${pkgdir}" || return 1
install -Dm644 "${srcdir}/sysusers.conf" "${pkgdir}/usr/lib/sysusers.d/${_gitname}.conf"
install -Dm644 "${srcdir}/camisole.service" "${pkgdir}/usr/lib/systemd/system/${_gitname}.service"
+ install -m0755 -d "$pkgdir"/usr/share/zsh/site-functions
+ install -m0644 "${srcdir}/_camisole" "$pkgdir"/usr/share/zsh/site-functions
}
diff --git a/_camisole b/_camisole
new file mode 100644
index 000000000000..378fb6aa0f76
--- /dev/null
+++ b/_camisole
@@ -0,0 +1,49 @@
+#compdef camisole
+
+_camisole () {
+ local curcontext=$curcontext state line
+ local -a help_opts
+ help_opts=('(- :)'{-h,--help}'[display help]')
+ typeset -a opts
+ typeset -A opt_args
+
+ opts=($help_opts \
+ '*'{-m,--module=}'[extra module to load]:module:_python_modules' \
+ '(-l --logging)'{-l,--logging=}'[logging level]:logging level:(critical fatal error warn warning info debug notset)'
+ )
+
+ _arguments -s -S -C $opts \
+ '(-): :->command' \
+ '(-)*:: :->opt-or-arg' && return
+
+ case $state in
+ (command)
+ local -a commands
+ commands=(
+ 'serve:start HTTP server' \
+ 'languages:check for working/failing languages')
+ _describe -t commands command commands && ret=0
+ ;;
+ (opt-or-arg)
+ curcontext=${curcontext%:*}-$line[1]:
+ case $line[1] in
+ (serve)
+ opts=(
+ '(-h --host)'{-h+,--host=}'[server host]:host' \
+ '(-p --port)'{-p+,--port=}'[server port]:port'
+ )
+ ;;
+ (languages)
+ opts=($help_opts \
+ '(-vv)-v[verbose mode]' \
+ '(-v)-vv[very verbose mode]'
+ )
+ ;;
+ esac
+ ;;
+ esac
+ _arguments -s -S $opts && ret=0
+ return ret
+}
+
+_camisole "$@"
diff --git a/camisole.service b/camisole.service
index 0f3bf5968844..5adb7a29f30e 100644
--- a/camisole.service
+++ b/camisole.service
@@ -4,7 +4,7 @@ After=network.target
[Service]
User=camisole
-ExecStart=/usr/bin/python -m camisole --logging=info
+ExecStart=/usr/bin/python -m camisole --logging=info serve
[Install]
WantedBy=multi-user.target