summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Raffre2017-09-27 14:28:26 +0200
committerJonathan Raffre2017-09-27 14:32:07 +0200
commitabcc741eb18088e26b775de25ed7ad912ed1f7e2 (patch)
tree3da496e621258b2f0f7103fd9c5a0cc4e6e8a218
downloadaur-ensime-server-bin.tar.gz
initial
-rw-r--r--.SRCINFO17
-rw-r--r--PKGBUILD60
2 files changed, 77 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..ac0cc694507d
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,17 @@
+pkgbase = ensime-server-bin
+ pkgdesc = ENSIME server
+ pkgver = 2.0.0
+ pkgrel = 1
+ url = https://github.com/ensime/ensime-server
+ arch = x86_64
+ arch = i686
+ license = custom
+ depends = java-environment
+ depends = scala
+ noextract = ensime_2.12-2.0.0-assembly.jar
+ source = https://github.com/ensime/ensime-server/releases/download/v2.0.0/ensime_2.12-2.0.0-assembly.jar
+ md5sums = 0712c847fc868c1060c93e0e159f1d79
+ sha256sums = c2085775e5d98214737abc9504771717cd210ba193c7450445a2e8a7cc211061
+
+pkgname = ensime-server-bin
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..3d12f619fe5c
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Jonathan "nekonyuu" Raffre <nk@nyuu.eu>
+# Thanks to jsalzberg for the initial PKGBUILD
+pkgname=ensime-server-bin
+pkgver=2.0.0
+_scalaver=2.12
+pkgrel=1
+pkgdesc="ENSIME server"
+url="https://github.com/ensime/ensime-server"
+arch=("x86_64" "i686")
+license=("custom")
+depends=("java-environment" "scala")
+_jarfile="ensime_${_scalaver}-${pkgver}-assembly.jar"
+source=("https://github.com/ensime/ensime-server/releases/download/v2.0.0/${_jarfile}")
+noextract=("${_jarfile}")
+md5sums=('0712c847fc868c1060c93e0e159f1d79')
+sha256sums=('c2085775e5d98214737abc9504771717cd210ba193c7450445a2e8a7cc211061')
+
+build() {
+ echo ""
+}
+
+package() {
+ mkdir -p "${pkgdir}/usr/lib/ensime" && \
+ cp "${srcdir}/${_jarfile}" "${pkgdir}/usr/lib/ensime"
+
+ mkdir -p "${pkgdir}/usr/bin" && cat <<SHELL > "${pkgdir}/usr/bin/ensime-server"
+#!/bin/sh
+
+PROJECT_DIR="\${1:-.}"
+SWANK_PORT="\$2"
+HTTP_PORT="\$3"
+
+mkdir -p "\${PROJECT_DIR}"/.ensime_cache
+
+if test -n "\${SWANK_PORT}"; then
+ echo -n "\${SWANK_PORT}" > "\${PROJECT_DIR}"/.ensime_cache/port
+fi
+
+if test -n "\${HTTP_PORT}"; then
+ echo -n "\${HTTP_PORT}" > "\${PROJECT_DIR}"/.ensime_cache/http
+fi
+
+exec /usr/bin/java -Densime.config="\${PROJECT_DIR}"/.ensime -cp /usr/lib/jvm/default/lib/tools.jar:/usr/share/scala/lib/scala-library.jar:/usr/share/scala/lib/scala-compiler.jar:/usr/share/scala/lib/scalap.jar:/usr/lib/ensime/${_jarfile} org.ensime.server.Server
+SHELL
+ chmod 0755 "${pkgdir}/usr/bin/ensime-server"
+
+ mkdir -p "${pkgdir}/usr/lib/systemd/user" && cat <<SYSTEMD > "${pkgdir}/usr/lib/systemd/user/ensime-server@.service"
+[Unit]
+Description=ENSIME user server for %i directory
+
+[Service]
+Type=simple
+EnvironmentFile=-%I/.ensime_cache/ports.conf
+ExecStartPre=-/usr/bin/rm -f %I/.ensime_cache/http %I/.ensime_cache/port
+ExecStart=/usr/bin/ensime-server %I \${SWANK_PORT} \${HTTP_PORT}
+
+[Install]
+WantedBy=default.target
+SYSTEMD
+}