diff options
author | Ben Alex | 2023-08-03 12:51:39 +1000 |
---|---|---|
committer | Ben Alex | 2023-08-03 12:51:39 +1000 |
commit | 727e18182568d67b54f69d501f4dae254121c76f (patch) | |
tree | b08a891c397f10a5a2e08b37c327a03c654fe598 | |
download | aur-727e18182568d67b54f69d501f4dae254121c76f.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 32 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | PKGBUILD | 67 | ||||
-rwxr-xr-x | karaf_wrapper.sh | 8 | ||||
-rw-r--r-- | openhab4.default | 1 | ||||
-rw-r--r-- | openhab4.hook | 10 | ||||
-rw-r--r-- | openhab4.install | 4 | ||||
-rw-r--r-- | openhab4.patch | 26 | ||||
-rw-r--r-- | openhab4.service | 18 |
9 files changed, 170 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..9d25eb3f24c7 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,32 @@ +pkgbase = openhab4 + pkgdesc = openhab4 open source home automation software + pkgver = 4.0.1 + pkgrel = 1 + url = http://www.openhab.org/ + install = openhab4.install + arch = any + license = EPL + depends = java-runtime-headless=17 + depends = archlinux-java-run + optdepends = openhab4-addons: add-on archives for offline use + conflicts = openhab4-snapshot + backup = etc/openhab4/services/addons.cfg + backup = etc/openhab4/services/runtime.cfg + backup = etc/default/openhab4 + backup = var/lib/openhab4/etc/keystore + backup = var/lib/openhab4/etc/users.properties + backup = var/lib/openhab4/etc/keys.properties + source = openhab-4.0.1.tar.gz::https://openhab.jfrog.io/artifactory/libs-release/org/openhab/distro/openhab/4.0.1/openhab-4.0.1.tar.gz + source = openhab4.service + source = openhab4.default + source = openhab4.patch + source = karaf_wrapper.sh + source = openhab4.hook + sha256sums = 3e9f77cd84c7431db13ca34b74bb2fb986296f4e11ef917e5e1724b3fd498f60 + sha256sums = b339bb5d1ddea2307170941033f1ace0de5bb82cdb0f4494ee00e9f9724aec85 + sha256sums = b149d976dc13dc18c62d2014457557e266e733ead70b0730d06dcd0372da78a7 + sha256sums = e35b8a07056f6dcb78b5bbbb56181a168e7620ae9e7c87d4f1c7fc334b76285a + sha256sums = b19c995beb521af7bf7a882370396748063a5bda9fdf2f28ed36e98437e98555 + sha256sums = 602b17bf8b824df289dbd5e5eea824042b3ec38de58c76b69b4dc72d90adfe35 + +pkgname = openhab4 diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..1306b43099e7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.gz +*.zst +pkg +src diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..9fa26a2242a8 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,67 @@ +# Maintainer: Ben Alex <ben.alex@acegi.com.au> +pkgname=openhab4 +pkgver=4.0.1 +pkgrel=1 +pkgdesc="openhab4 open source home automation software" +arch=("any") + url="http://www.openhab.org/" +license=("EPL") +depends=("java-runtime-headless=17" "archlinux-java-run") +optdepends=("openhab4-addons: add-on archives for offline use") + +conflicts=("openhab4-snapshot") + +backup=("etc/${pkgname}/services/addons.cfg" + "etc/${pkgname}/services/runtime.cfg" + "etc/default/${pkgname}" + "var/lib/${pkgname}/etc/keystore" + "var/lib/${pkgname}/etc/users.properties" + "var/lib/${pkgname}/etc/keys.properties") +install="${pkgname}.install" + +source=("openhab-${pkgver}.tar.gz::https://openhab.jfrog.io/artifactory/libs-release/org/openhab/distro/openhab/${pkgver}/openhab-${pkgver}.tar.gz" + "${pkgname}.service" + "${pkgname}.default" + "${pkgname}.patch" + "karaf_wrapper.sh" + "${pkgname}.hook") +sha256sums=('3e9f77cd84c7431db13ca34b74bb2fb986296f4e11ef917e5e1724b3fd498f60' + 'b339bb5d1ddea2307170941033f1ace0de5bb82cdb0f4494ee00e9f9724aec85' + 'b149d976dc13dc18c62d2014457557e266e733ead70b0730d06dcd0372da78a7' + 'e35b8a07056f6dcb78b5bbbb56181a168e7620ae9e7c87d4f1c7fc334b76285a' + 'b19c995beb521af7bf7a882370396748063a5bda9fdf2f28ed36e98437e98555' + '602b17bf8b824df289dbd5e5eea824042b3ec38de58c76b69b4dc72d90adfe35') + + +prepare() { + patch -p1 < ${srcdir}/${pkgname}.patch +} + +package() { + install -Dm644 "${srcdir}/${pkgname}.default" "${pkgdir}/etc/default/${pkgname}" + install -Dm644 "${srcdir}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" + + mkdir -p "${pkgdir}/etc/${pkgname}" + cp -r ${srcdir}/conf/* "${pkgdir}/etc/${pkgname}" + + mkdir -p "${pkgdir}/var/lib/${pkgname}/etc" + cp -r ${srcdir}/userdata/etc/* "${pkgdir}/var/lib/${pkgname}/etc" + + mkdir -p "${pkgdir}/usr/share/${pkgname}" + cp -r "${srcdir}/runtime" "${pkgdir}/usr/share/${pkgname}" + cp -r "${srcdir}/addons" "${pkgdir}/usr/share/${pkgname}" + install -m755 "${srcdir}/karaf_wrapper.sh" "${pkgdir}/usr/share/${pkgname}/karaf_wrapper.sh" + + mkdir -p "${pkgdir}/usr/share/libalpm/hooks" + install -m644 "${srcdir}/${pkgname}.hook" "${pkgdir}/usr/share/libalpm/hooks/${pkgname}.hook" + + mkdir -p "${pkgdir}/var/log/${pkgname}" + + echo "u ${pkgname} - - /usr/share/${pkgname}" | install -Dm644 /dev/stdin "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" + echo "m ${pkgname} uucp" >> "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" + echo "Z /etc/${pkgname} - ${pkgname} ${pkgname} -" | install -Dm644 /dev/stdin "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" + echo "Z /usr/share/${pkgname} - ${pkgname} ${pkgname} -" >> "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" + echo "Z /var/lib/${pkgname} - ${pkgname} ${pkgname} -" >> "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" + echo "z /var/log/${pkgname} - ${pkgname} ${pkgname} -" >> "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" + echo "z /run/lock 0775 root uucp -" >> "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" +} diff --git a/karaf_wrapper.sh b/karaf_wrapper.sh new file mode 100755 index 000000000000..0e74efd772b0 --- /dev/null +++ b/karaf_wrapper.sh @@ -0,0 +1,8 @@ +#!/bin/sh +if [[ -z "${JAVA_HOME}" ]]; then + JAVA_HOME_DETECTED=$(archlinux-java-run --min 17 --max 17 --java-home) + if (( $? == 0 )); then + export JAVA_HOME=${JAVA_HOME_DETECTED} + fi +fi +exec /usr/share/openhab4/runtime/bin/karaf "${@}" diff --git a/openhab4.default b/openhab4.default new file mode 100644 index 000000000000..73212dcb2294 --- /dev/null +++ b/openhab4.default @@ -0,0 +1 @@ +EXTRA_JAVA_OPTS="" diff --git a/openhab4.hook b/openhab4.hook new file mode 100644 index 000000000000..8cb09544ef5a --- /dev/null +++ b/openhab4.hook @@ -0,0 +1,10 @@ +[Trigger] +Type = Package +Operation = Upgrade +Target = openhab4 +Target = openhab4-addons + +[Action] +Description = Stopping openhab4 for upgrade +When = PreTransaction +Exec = /usr/bin/systemctl stop openhab4.service diff --git a/openhab4.install b/openhab4.install new file mode 100644 index 000000000000..80d990d63126 --- /dev/null +++ b/openhab4.install @@ -0,0 +1,4 @@ +pre_upgrade() { + rm -fr /var/lib/openhab4/cache + rm -fr /var/lib/openhab4/tmp +} diff --git a/openhab4.patch b/openhab4.patch new file mode 100644 index 000000000000..49420e335757 --- /dev/null +++ b/openhab4.patch @@ -0,0 +1,26 @@ +diff -Nur openhab4.orig/runtime/bin/oh_dir_layout openhab4.new/runtime/bin/oh_dir_layout +--- openhab4.orig/runtime/bin/oh_dir_layout 2020-11-29 18:19:58.000000000 +0100 ++++ openhab4.new/runtime/bin/oh_dir_layout 2020-11-30 21:15:26.742400846 +0100 +@@ -6,7 +6,7 @@ + export OPENHAB_HOME=`cd "$DIRNAME/../.."; pwd` + + if [ -z ${OPENHAB_CONF} ]; then +- export OPENHAB_CONF="${OPENHAB_HOME}/conf" ++ export OPENHAB_CONF="/etc/openhab4" + fi + + if [ -z ${OPENHAB_RUNTIME} ]; then +@@ -14,11 +14,11 @@ + fi + + if [ -z ${OPENHAB_USERDATA} ]; then +- export OPENHAB_USERDATA="${OPENHAB_HOME}/userdata" ++ export OPENHAB_USERDATA="/var/lib/openhab4" + fi + + if [ -z ${OPENHAB_LOGDIR} ]; then +- export OPENHAB_LOGDIR="${OPENHAB_USERDATA}/logs" ++ export OPENHAB_LOGDIR="/var/log/openhab4" + fi + + if [ -z ${OPENHAB_BACKUPS} ]; then diff --git a/openhab4.service b/openhab4.service new file mode 100644 index 000000000000..b5a8ac145a5e --- /dev/null +++ b/openhab4.service @@ -0,0 +1,18 @@ +[Unit] +Description=The openHAB 4 Home Automation Bus Solution +Documentation=http://docs.openhab.org +Wants=network-online.target +After=network-online.target + +[Service] +Type=simple +User=openhab4 +Group=openhab4 +WorkingDirectory=/usr/share/openhab4 +EnvironmentFile=/etc/default/openhab4 +ExecStart=/usr/share/openhab4/karaf_wrapper.sh server +ExecStop=/usr/share/openhab4/karaf_wrapper.sh stop +Restart=on-failure + +[Install] +WantedBy=multi-user.target |