From 5a2401292975cb8294c3ebe442d67deac0a46184 Mon Sep 17 00:00:00 2001
From: Bob Mottram <bob@freedombone.net>
Date: Sat, 12 May 2018 19:28:30 +0100
Subject: [PATCH] Inadyn systemd daemon

---
 src/freedombone-image-customise | 16 ++++++++++------
 src/freedombone-utils-web       | 16 ++++++++++------
 2 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/src/freedombone-image-customise b/src/freedombone-image-customise
index 062958d21..210241054 100755
--- a/src/freedombone-image-customise
+++ b/src/freedombone-image-customise
@@ -1657,7 +1657,7 @@ image_install_inadyn() {
         mkdir -p "$rootdir/root/build"
     fi
     chroot "$rootdir" apt-get -yq install build-essential curl libgnutls28-dev automake1.11 libconfuse-dev
-    chroot "$rootdir" apt-get -yq install gnutls-dev libconfuse-dev
+    chroot "$rootdir" apt-get -yq install gnutls-dev libconfuse-dev pkg-config
 
     if [ -d /repos/inadyn ]; then
         mkdir "$rootdir/root/build/inadyn"
@@ -1696,13 +1696,17 @@ image_install_inadyn() {
     chmod 600 "$rootdir/etc/inadyn.conf"
 
     { echo '[Unit]';
-      echo 'Description=inadyn (DynDNS updater)';
-      echo 'After=network.target';
+      echo 'Description=Internet Dynamic DNS Client';
+      echo 'Documentation=man:inadyn';
+      echo 'Documentation=man:inadyn.conf';
+      echo 'Documentation=https://github.com/troglobit/inadyn';
+      echo 'ConditionPathExists=/etc/inadyn.conf';
+      echo 'After=network-online.target';
+      echo 'Requires=network-online.target';
       echo '';
       echo '[Service]';
-      echo 'ExecStart=/usr/sbin/inadyn --config /etc/inadyn.conf';
-      echo 'Restart=always';
-      echo 'Type=forking';
+      echo 'Type=simple';
+      echo "ExecStart=/usr/sbin/inadyn -n -s --config ${INADYN_CONFIG_FILE}";
       echo '';
       echo '[Install]';
       echo 'WantedBy=multi-user.target'; } > "$rootdir/etc/systemd/system/inadyn.service"
diff --git a/src/freedombone-utils-web b/src/freedombone-utils-web
index a6080184d..eed191c36 100755
--- a/src/freedombone-utils-web
+++ b/src/freedombone-utils-web
@@ -526,7 +526,7 @@ function install_dynamicdns {
     # https version 1.99.8
 
     apt-get -yq install build-essential curl libgnutls28-dev automake1.11
-    apt-get -yq install gnutls-dev libconfuse-dev
+    apt-get -yq install gnutls-dev libconfuse-dev pkg-config
 
     if [ ! -d "$INSTALL_DIR/inadyn" ]; then
         if [ -d /repos/inadyn ]; then
@@ -568,13 +568,17 @@ function install_dynamicdns {
     chmod 600 "${INADYN_CONFIG_FILE}"
 
     { echo '[Unit]';
-      echo 'Description=inadyn (DynDNS updater)';
-      echo 'After=network.target';
+      echo 'Description=Internet Dynamic DNS Client';
+      echo 'Documentation=man:inadyn';
+      echo 'Documentation=man:inadyn.conf';
+      echo 'Documentation=https://github.com/troglobit/inadyn';
+      echo 'ConditionPathExists=/etc/inadyn.conf';
+      echo 'After=network-online.target';
+      echo 'Requires=network-online.target';
       echo '';
       echo '[Service]';
-      echo "ExecStart=/usr/sbin/inadyn --config ${INADYN_CONFIG_FILE}";
-      echo 'Restart=always';
-      echo 'Type=forking';
+      echo 'Type=simple';
+      echo "ExecStart=/usr/sbin/inadyn -n -s --config ${INADYN_CONFIG_FILE}";
       echo '';
       echo '[Install]';
       echo 'WantedBy=multi-user.target'; } > /etc/systemd/system/inadyn.service
-- 
GitLab