From 8cd23d0d119a8af2dd2456037c06bd3d636fac1d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 26 Apr 2024 10:57:34 +0200 Subject: [PATCH] try systemd --- zzz_draft_birdnet-pi/Dockerfile | 1 + zzz_draft_birdnet-pi/config.json | 2 +- .../rootfs/custom-services.d/00_dbus | 16 +++++++++++++--- .../rootfs/custom-services.d/00_php_pfm | 5 +++++ .../rootfs/custom-services.d/00_pulseaudio | 6 ------ .../rootfs/custom-services.d/01_avahi | 3 ++- .../{00_birdnet_analysis => 01_birdnet_analysis} | 0 .../{00_birdnet_log => 01_birdnet_log} | 0 ...00_birdnet_recording => 01_birdnet_recording} | 0 .../{00_birdnet_stats => 01_birdnet_stats} | 0 .../rootfs/custom-services.d/01_caddy | 8 -------- .../{00_chart_viewer => 01_chart_viewer} | 0 ..._spectrogram_viewer => 01_spectrogram_viewer} | 0 .../{00_web_terminal => 01_web_terminal} | 0 .../rootfs/custom-services.d/02_caddy | 12 ++++++++++++ .../rootfs/etc/cont-init.d/99-run.sh | 4 ++++ 16 files changed, 38 insertions(+), 19 deletions(-) delete mode 100644 zzz_draft_birdnet-pi/rootfs/custom-services.d/00_pulseaudio rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_birdnet_analysis => 01_birdnet_analysis} (100%) rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_birdnet_log => 01_birdnet_log} (100%) rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_birdnet_recording => 01_birdnet_recording} (100%) rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_birdnet_stats => 01_birdnet_stats} (100%) delete mode 100644 zzz_draft_birdnet-pi/rootfs/custom-services.d/01_caddy rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_chart_viewer => 01_chart_viewer} (100%) rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_spectrogram_viewer => 01_spectrogram_viewer} (100%) rename zzz_draft_birdnet-pi/rootfs/custom-services.d/{00_web_terminal => 01_web_terminal} (100%) create mode 100644 zzz_draft_birdnet-pi/rootfs/custom-services.d/02_caddy diff --git a/zzz_draft_birdnet-pi/Dockerfile b/zzz_draft_birdnet-pi/Dockerfile index e55f43e06..557451b29 100644 --- a/zzz_draft_birdnet-pi/Dockerfile +++ b/zzz_draft_birdnet-pi/Dockerfile @@ -141,6 +141,7 @@ RUN chmod 777 /ha_entrypoint.sh /ha_entrypoint_modif.sh && /ha_entrypoint_modif. # Avoid config.yaml interference WORKDIR /config +ENTRYPOINT ["/lib/systemd/systemd"] #ENTRYPOINT [ "/usr/bin/env" ] #CMD [ "/ha_entrypoint.sh" ] #SHELL ["/bin/bash", "-o", "pipefail", "-c"] diff --git a/zzz_draft_birdnet-pi/config.json b/zzz_draft_birdnet-pi/config.json index 52cc0d3b5..74d1e82d1 100644 --- a/zzz_draft_birdnet-pi/config.json +++ b/zzz_draft_birdnet-pi/config.json @@ -97,5 +97,5 @@ }, "slug": "birdnet-pi", "url": "https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pi", - "version": "1.2" + "version": "1.3" } diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_dbus b/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_dbus index e783de5a3..53e64dbee 100644 --- a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_dbus +++ b/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_dbus @@ -1,4 +1,14 @@ #!/usr/bin/with-contenv bashio -echo "Starting service: dbus" -exec \ - dbus-daemon --system --nofork \ No newline at end of file +# Waiting for dbus +until [[ -e /var/run/dbus/system_bus_socket ]]; do + sleep 1s +done + +echo "Starting service: pulseaudio" +while : +do + if [[ ! $(/usr/bin/pulseaudio --check) ]]; then + /usr/bin/pulseaudio --system + fi + sleep 10 +done diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_php_pfm b/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_php_pfm index 5735014c7..1c9797b59 100644 --- a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_php_pfm +++ b/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_php_pfm @@ -1,4 +1,9 @@ #!/usr/bin/with-contenv bash # shellcheck shell=bash +# Waiting for dbus +until [[ -e /var/run/dbus/system_bus_socket ]]; do + sleep 1s +done +echo "Starting service: php pfm" exec /usr/sbin/php-fpm* -F \ No newline at end of file diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_pulseaudio b/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_pulseaudio deleted file mode 100644 index 9acc23071..000000000 --- a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_pulseaudio +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/with-contenv bashio -echo "Starting service: pulseaudio" -exec s6-setuidgid pi /usr/bin/pulseaudio \ - --log-level=0 \ - --log-target=stderr \ - --exit-idle-time=-1 > /dev/null 2>&1 \ No newline at end of file diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_avahi b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_avahi index 156460c6b..2ffb3671f 100644 --- a/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_avahi +++ b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_avahi @@ -1,8 +1,9 @@ #!/usr/bin/with-contenv bashio -echo "Starting service: avahi daemon" +# Waiting for dbus until [[ -e /var/run/dbus/system_bus_socket ]]; do sleep 1s done +echo "Starting service: avahi daemon" exec \ avahi-daemon --no-chroot \ No newline at end of file diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_analysis b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_analysis similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_analysis rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_analysis diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_log b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_log similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_log rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_log diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_recording b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_recording similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_recording rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_recording diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_stats b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_stats similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_birdnet_stats rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_birdnet_stats diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_caddy b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_caddy deleted file mode 100644 index 1acd30122..000000000 --- a/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_caddy +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/with-contenv bashio -echo "Starting service: caddy" -until [[ -e /var/run/dbus/system_bus_socket ]]; do - sleep 1s -done - -exec \ - s6-setuidgid "$USER" /usr/bin/caddy run --config /etc/caddy/Caddyfile diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_chart_viewer b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_chart_viewer similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_chart_viewer rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_chart_viewer diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_spectrogram_viewer b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_spectrogram_viewer similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_spectrogram_viewer rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_spectrogram_viewer diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/00_web_terminal b/zzz_draft_birdnet-pi/rootfs/custom-services.d/01_web_terminal similarity index 100% rename from zzz_draft_birdnet-pi/rootfs/custom-services.d/00_web_terminal rename to zzz_draft_birdnet-pi/rootfs/custom-services.d/01_web_terminal diff --git a/zzz_draft_birdnet-pi/rootfs/custom-services.d/02_caddy b/zzz_draft_birdnet-pi/rootfs/custom-services.d/02_caddy new file mode 100644 index 000000000..3bc7a07ff --- /dev/null +++ b/zzz_draft_birdnet-pi/rootfs/custom-services.d/02_caddy @@ -0,0 +1,12 @@ +#!/usr/bin/with-contenv bashio +# Dependencies +until [[ -e /var/run/dbus/system_bus_socket ]] && [[ -e /run/php/php*-fpm.sock ]]; do + sleep 1s +done + +# Correct fpm.sock +sed -i "s|/run/php/php-fpm.sock|$(find /run/php -name *.sock)|g" /etc/caddy/Caddyfile + +echo "Starting service: caddy" +exec \ + s6-setuidgid "$USER" /usr/bin/caddy run --config /etc/caddy/Caddyfile diff --git a/zzz_draft_birdnet-pi/rootfs/etc/cont-init.d/99-run.sh b/zzz_draft_birdnet-pi/rootfs/etc/cont-init.d/99-run.sh index 93868d2dc..82326914c 100755 --- a/zzz_draft_birdnet-pi/rootfs/etc/cont-init.d/99-run.sh +++ b/zzz_draft_birdnet-pi/rootfs/etc/cont-init.d/99-run.sh @@ -6,6 +6,10 @@ set -e # INITALISATION # ################# +# Starting dbus +echo "Starting service: dbus" +service dbus start + bashio::log.info "ALSA_CARD option is set to $(bashio::config "ALSA_CARD"). If the microphone doesn't work, please adapt it" echo " "