summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Schmaus <flow@gentoo.org>2024-07-15 21:38:50 +0200
committerFlorian Schmaus <flow@gentoo.org>2024-07-15 21:38:50 +0200
commit9202180ebae8503530b64581707584f4834eaf2b (patch)
treeb190f9132cf96f76fa3dc4e50d9120c4a31ef5aa /app-misc/openhab-bin
parentapp-misc/openhab-bin: add update logic (diff)
downloadgentoo-9202180ebae8503530b64581707584f4834eaf2b.tar.gz
gentoo-9202180ebae8503530b64581707584f4834eaf2b.tar.bz2
gentoo-9202180ebae8503530b64581707584f4834eaf2b.zip
app-misc/openhab-bin: add 4.2.0
Signed-off-by: Florian Schmaus <flow@gentoo.org>
Diffstat (limited to 'app-misc/openhab-bin')
-rw-r--r--app-misc/openhab-bin/Manifest1
-rw-r--r--app-misc/openhab-bin/openhab-bin-4.2.0.ebuild124
2 files changed, 125 insertions, 0 deletions
diff --git a/app-misc/openhab-bin/Manifest b/app-misc/openhab-bin/Manifest
index 3a246139f423..2172c7bf4447 100644
--- a/app-misc/openhab-bin/Manifest
+++ b/app-misc/openhab-bin/Manifest
@@ -1,3 +1,4 @@
DIST openhab-4.1.1.zip 110909555 BLAKE2B df89e2391e8abe926635fc1e0fbb5c7b1f6a03a87ba643d68a3c8bf1ef52f8b6ca862d8655112a225e1ec2f2d9cc90e0906c40a5dc00f52b53fcb4bac8059378 SHA512 50125e025e4ed8f3ea93359a777e0944150cf157b853bc3f6e777c04956c59346d77d4f3680756241d3d71b8c57014f777601cb5ca836b8e80046ce5a5aac770
DIST openhab-4.1.2.tar.gz 110558399 BLAKE2B b77800898d5358caaadf31e921351d5431a09cf97ad881e091c0f7f7ca6efa13439f39075e15d4887df3b28d2548b10cbf44176328570cf2b8df8fc15bc25ecd SHA512 ccad90d1905f2190cd54284353981453d4d38f1206a427b91094dfd8e8a25e31cc15921544ac883f501ee33d018226b07e12e04bfd5c928771ff090826de3cba
+DIST openhab-4.2.0.tar.gz 110566875 BLAKE2B 25f07801258b958d3845cc43360eac9707416c424d61a8a2eeda55d522735bbf2690c989588cd40dee09ce72aee7aa53e2704d048645190981101cd293c5090b SHA512 83cc0c171de303bcc01198a94963933a7fde93f84a8ccf3cb27511de680576e14d03482d13abc0c0fdcbda6069a6d6f46dee44cb85f597aea2a8641c6693337a
DIST openhab-cli-2024-01-14 8633 BLAKE2B 0b0999abcb884b779087b92f9f3e08fee3662753692392fbb30d218d0fc25fd1fca613c32b8193a3365764c55ac3525f8369aeea4edbf61223cd0219209c4cbf SHA512 bf24ae776d4362e8a60a0c71cb025834e5f645a24377a87484477f544026f2fdd996a1781f1082e62197fce33a9dadb5972df22ce3e4cd9f73d3088ec5bc0a98
diff --git a/app-misc/openhab-bin/openhab-bin-4.2.0.ebuild b/app-misc/openhab-bin/openhab-bin-4.2.0.ebuild
new file mode 100644
index 000000000000..9b1c384fe722
--- /dev/null
+++ b/app-misc/openhab-bin/openhab-bin-4.2.0.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo systemd tmpfiles
+
+MY_PN=${PN%-bin}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="An open-source automation software for your home"
+HOMEPAGE="https://www.openhab.org/"
+SRC_URI="
+ https://github.com/openhab/openhab-distro/releases/download/${PV}/${MY_P}.tar.gz
+ https://raw.githubusercontent.com/openhab/openhab-linuxpkg/10061acd36524afb12a033fea6dcf142b399bf56/resources/usr/bin/openhab-cli
+ -> openhab-cli-2024-01-14
+"
+
+S="${WORKDIR}"
+LICENSE="EPL-2.0"
+SLOT="0"
+
+KEYWORDS="~amd64 ~arm64"
+
+MY_JAVA_DEPEND=">=virtual/jre-17"
+
+# app-arch/zip: used by "openhab-cli backup"
+RDEPEND="
+ ${MY_JAVA_DEPEND}
+ acct-user/openhab
+ app-arch/zip
+ dev-java/java-config
+"
+
+BDEPEND="app-arch/unzip"
+
+src_compile() {
+ :
+}
+
+src_install() {
+ # We use move here to preserve the executable bit on the files under
+ # openhab/runtime/bin.
+ domove() {
+ local source="${1}"
+ local target="${2}"
+
+ local dest="${ED}/${target}"
+
+ mkdir -p "${dest}" || die "Failed to create ${dest}"
+ mv "${source}"/* "${dest}" || die "Failed to move"
+ }
+
+ domove runtime /usr/share/openhab/runtime
+ domove conf /etc/openhab
+
+ domove userdata /var/lib/openhab
+ fowners -R openhab:openhab /var/lib/openhab
+
+ local dirs=(
+ /usr/share/openhab/addons
+ /var/log/openhab
+ )
+ local d
+ for d in "${dirs[@]}"; do
+ keepdir "${d}"
+ fowners openhab:openhab "${d}"
+ done
+
+ newenvd "${FILESDIR}"/openhab.env 50openhab
+
+ systemd_dounit "${FILESDIR}"/openhab.service
+ newtmpfiles "${FILESDIR}"/openhab.tmpfiles openhab.conf
+
+ newbin - openhab <<EOF
+#!/usr/bin/env bash
+set -eu
+
+if [[ -v JAVA_HOME_OVERRIDE ]]; then
+ JAVA_HOME="\${JAVA_HOME_OVERRIDE}"
+else
+ if ! GENTOO_JAVA_VM="\$(depend-java-query --get-vm '${MY_JAVA_DEPEND}')"; then
+ >&2 echo "Could not find Java VM for ${MY_JAVA_DEPEND}"
+ exit 1
+ fi
+
+ if ! JAVA_HOME_ASSIGNMENT=\$(java-config -P \${GENTOO_JAVA_VM} | grep JAVA_HOME); then
+ >&2 echo "Could not retrieve JAVA_HOME of \${GENTOO_JAVA_VM}"
+ exit 1
+ fi
+
+ eval \${JAVA_HOME_ASSIGNMENT}
+fi
+
+export JAVA_HOME
+exec /usr/share/openhab/runtime/bin/karaf "\$@"
+EOF
+ newbin "${DISTDIR}"/openhab-cli-2024-01-14 openhab-cli
+}
+
+pkg_postinst() {
+ tmpfiles_process openhab.conf
+
+ if [[ -z ${REPLACING_VERSIONS} && -z ${OPENHAB_POSTINST_UPDATE} ]]; then
+ return
+ fi
+
+ if [[ -d "${EROOT}"/run/systemd/system ]]; then
+ if systemctl is-active --quiet openhab; then
+ local openhab_service_active=1
+ einfo "Restarting OpenHAB service due to version update"
+ edob systemctl daemon-reload
+ edob systemctl stop openhab
+ fi
+
+ echo y | edob -m "Cleaning OpenHAB cache" \
+ openhab-cli clean-cache
+ assert "Failed to clean OpenHAB cache"
+
+ if [[ -v openhab_service_active ]]; then
+ edob systemctl start openhab
+ fi
+ fi
+}