diff options
author | Tyler Cook | 2021-01-03 18:26:34 -0600 |
---|---|---|
committer | Tyler Cook | 2021-01-03 18:26:34 -0600 |
commit | 3b25634df3a89a8303be8d5b155295a74dc8a830 (patch) | |
tree | 184008b57dc951f380d9ca16c3d25229517abbdb /PKGBUILD | |
download | aur-sandpolis-agent-git.tar.gz |
Initial commit
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..773447ae2dbd --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,92 @@ +# Maintainer: Tyler Cook <tcc@sandpolis.com> +_module=com.sandpolis.agent.vanilla +pkgdesc='Sandpolis agent' +pkgname=sandpolis-agent-git +pkgver=7.0.0 +pkgrel=1 +url='https://github.com/sandpolis/sandpolis' +install=sandpolis-agent.install +arch=('any') +license=('Mozilla Public License Version 2.0') +makedepends=('java-environment>=15' 'git') +depends=('java-runtime>=15') +provides=('sandpolis-agent') +conflicts=('sandpolis-agent') +source=("git+https://github.com/sandpolis/sandpolis.git" \ + "git+https://github.com/sandpolis/${_module}.git") +sha512sums=('SKIP' 'SKIP') + +prepare() { + + # Transplant submodule instead of initializing it + cp -r "${srcdir}/${_module}" "${srcdir}/sandpolis" +} + +pkgver() { + cd "${srcdir}/sandpolis/${_module}" + git describe --tags | tr -d 'v' +} + +build() { + cd "${srcdir}/sandpolis" + ./gradlew --no-daemon -g "${startdir}/.gradle" ":${_module}:assembleLib" +} + +package() { + + # Setup directories + install -d "${pkgdir}/usr/bin" + install -d "${pkgdir}/usr/lib/systemd/system" + install -d "${pkgdir}/usr/share/java/sandpolis-agent/plugin" + install -d "${pkgdir}/var/lib/sandpolis-agent/data" + install -d "${pkgdir}/var/log/sandpolis-agent" + + # Install libraries + cp -r "${srcdir}/sandpolis/${_module}/build/lib" \ + "${pkgdir}/usr/share/java/sandpolis-agent" + + # Install invocation script + cat <<-EOF >"${pkgdir}/usr/bin/sandpolis-agent" + #!/bin/sh + exec /usr/bin/java \ + -Dpath.data=/var/lib/sandpolis-agent/data \ + -Dpath.log=/var/log/sandpolis-agent \ + -Dpath.lib=/usr/share/java/sandpolis-agent/lib \ + --module-path /usr/share/java/sandpolis-agent/lib \ + -m ${_module}/${_module}.Main \ + "$@" + EOF + chmod 755 "${pkgdir}/usr/bin/sandpolis-agent" + + # Install configuration script + cat <<-EOF >"${pkgdir}/usr/bin/sandpolis-agent-config" + #!/bin/sh + exec /usr/bin/java \ + -Dpath.data=/var/lib/sandpolis-agent/data \ + -Dpath.log=/var/log/sandpolis-agent \ + -Dpath.lib=/usr/share/java/sandpolis-agent/lib \ + -Dconfig_mode=true \ + --module-path /usr/share/java/sandpolis-agent/lib \ + -m ${_module}/${_module}.Main \ + "$@" + EOF + chmod 755 "${pkgdir}/usr/bin/sandpolis-agent-config" + + # Install systemd unit + cat <<-EOF >"${pkgdir}/usr/lib/systemd/system/sandpolis-agent.service" + [Unit] + Description=Sandpolis Agent + After=network.target + StartLimitIntervalSec=0 + + [Service] + Type=simple + Restart=always + RestartSec=1 + User=sandpolis + ExecStart=/usr/bin/sandpolis-agent + + [Install] + WantedBy=multi-user.target + EOF +} |