Install mqttdpms
The `mqttdpms` tool will allow the screens to be turned off and on using Home Assistant. We'll install it into the rootfs image by copying the artifact from its Jenkins build into the overlay tree before building the image.
parent
51a2324a1c
commit
3b4d9c0109
|
@ -1 +1,2 @@
|
|||
/_build
|
||||
overlay/home/user/.config/mqttdpms/config.toml
|
||||
|
|
8
Makefile
8
Makefile
|
@ -1,7 +1,9 @@
|
|||
SHELL ?= /bin/sh
|
||||
|
||||
.PHONY: rootfs
|
||||
rootfs:
|
||||
rootfs: \
|
||||
overlay/usr/local/bin/mqttdpms \
|
||||
overlay/home/user/.config/mqttdpms/config.toml
|
||||
$(SHELL) mkrootfs.sh _build/rootfs
|
||||
|
||||
.PHONY: initramfs
|
||||
|
@ -15,3 +17,7 @@ _build/rootfs/boot/initramfs.img: \
|
|||
.PHONY: publish
|
||||
publish:
|
||||
$(SHELL) publish.sh _build/rootfs
|
||||
|
||||
overlay/home/user/.config/mqttdpms/config.toml: \
|
||||
overlay/home/user/.config/mqttdpms/config.toml.in
|
||||
sed "s:@PASSWORD@:${MQTTDPMS_PASSWORD}:" < $< > $@
|
||||
|
|
|
@ -39,9 +39,20 @@ pipeline {
|
|||
sh 'rm -rf _build'
|
||||
}
|
||||
}
|
||||
copyArtifacts \
|
||||
filter: 'aarch64/mqttdpms',
|
||||
projectName: 'mqttdpms/master',
|
||||
selector: lastSuccessful()
|
||||
sh 'install aarch64/mqttdpms overlay/usr/local/bin/'
|
||||
withCredentials([usernamePassword(
|
||||
usernameVariable: 'MQTTDPMS_USERNAME',
|
||||
passwordVariable: 'MQTTDPMS_PASSWORD',
|
||||
credentialsId: 'mqttdpms-basementhud',
|
||||
)]) {
|
||||
sh 'make rootfs initramfs'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish') {
|
||||
when {
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
[Unit]
|
||||
Description=MQTT DPMS Control
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/local/bin/mqttdpms
|
||||
Environment=RUST_LOG=info
|
||||
Restart=always
|
||||
StandardInput=null
|
||||
StandardOutput=journal
|
|
@ -0,0 +1,8 @@
|
|||
name = "Basement HUD"
|
||||
|
||||
[mqtt]
|
||||
host = 'homeassistant.pyrocufflink.blue'
|
||||
port = 8883
|
||||
tls = true
|
||||
username = 'basementhud'
|
||||
password = "@PASSWORD@"
|
|
@ -7,6 +7,6 @@ TZ="$(curl https://ipapi.co/timezone)"
|
|||
export TZ
|
||||
|
||||
systemctl --user import-environment DISPLAY TZ
|
||||
systemctl --user start firefox-marionette.socket firefox
|
||||
systemctl --user start firefox-marionette.socket firefox mqttdpms
|
||||
|
||||
exec openbox-session
|
||||
|
|
Loading…
Reference in New Issue