From 8550e5afb83a00595a2c8fac78a5fc57c4d9b579 Mon Sep 17 00:00:00 2001
From: John Dorman <dorman@ataxia.cloud>
Date: Tue, 7 Jul 2020 00:50:05 -0700
Subject: [PATCH] Updated on_boot package to handle all steps.

---
 on-boot-script/README.md                      |  18 +++++-------------
 .../dpkg-build-files/debian/postinst          |  18 ++++++++++++++++--
 .../packages/udm-boot_1.0.1-1_all.deb         | Bin 0 -> 2016 bytes
 3 files changed, 21 insertions(+), 15 deletions(-)
 create mode 100644 on-boot-script/packages/udm-boot_1.0.1-1_all.deb

diff --git a/on-boot-script/README.md b/on-boot-script/README.md
index ba1cf00..7720dba 100644
--- a/on-boot-script/README.md
+++ b/on-boot-script/README.md
@@ -20,25 +20,17 @@ rm /etc/systemd/system/udmboot.service
 * Built on Ubuntu-20.04 on Windows 10/WSL2
 
 ## Steps
-1. Copy on_boot.sh and make on_boot.d and add scripts to on_boot.d
-    ```shell script
-    mkdir -p /mnt/data/on_boot.d
-    vi /mnt/data/on_boot.sh
-    chmod u+x /mnt/data/on_boot.sh
-    ```
-    Example: [on_boot.sh](examples/udm-files/on_boot.sh)
-
-2. Get into the unifios shell on your udm
+1. Get into the unifios shell on your udm
 ```shell script
 unifi-os shell
 ```
-3. Download the [udm-boot_1.0.0-1_all.deb](packages/udm-boot_1.0.0-1_all.deb) and install it and go back to the UDM
+2. Download [udm-boot_1.0.1-1_all.deb](packages/udm-boot_1.0.0-1_all.deb) and install it and go back to the UDM
 ```shell script
-curl -L https://raw.githubusercontent.com/boostchicken/udm-utilities/master/on-boot-script/packages/udm-boot_1.0.0-1_all.deb -o udm-boot_1.0.0-1_all.deb
-dpkg -i udm-boot_1.0.0-1_all.deb
+curl -L https://raw.githubusercontent.com/boostchicken/udm-utilities/master/on-boot-script/packages/udm-boot_1.0.1-1_all.deb -o udm-boot_1.0.1-1_all.deb
+dpkg -i udm-boot_1.0.1-1_all.deb
 exit
 ```
-4. Copy any shell scripts you want to run to /mnt/data/on_boot.d and make sure they are executable and have the correct shebang (#!/bin/sh)
+3. Copy any shell scripts you want to run to /mnt/data/on_boot.d on your UDM (not the unifi-os shell)and make sure they are executable and have the correct shebang (#!/bin/sh)
     Examples: 
     * Start a DNS Container [10-dns.sh](../dns-common/on_boot.d/10-dns.sh)
     * Start wpa_supplicant [on_boot.d/10-wpa_supplicant.sh](examples/udm-files/on_boot.d/10-wpa_supplicant.sh)
diff --git a/on-boot-script/dpkg-build-files/debian/postinst b/on-boot-script/dpkg-build-files/debian/postinst
index d0c33c6..3941a14 100644
--- a/on-boot-script/dpkg-build-files/debian/postinst
+++ b/on-boot-script/dpkg-build-files/debian/postinst
@@ -1,10 +1,24 @@
 #!/bin/sh
-
 set -e
 
-
 case "$1" in
     configure)
+      echo '#!/bin/sh
+
+            if [ -d /mnt/data/on_boot.d ]; then
+                for i in /mnt/data/on_boot.d/*.sh; do
+                    if [ -r $i ]; then
+                        . $i
+                    fi
+                done
+            fi
+            ' > /tmp/on_boot.sh
+       scp -o StrictHostKeyChecking=no /tmp/on_boot.sh root@127.0.1.1:/mnt/data/on_boot.sh
+       ssh -o StrictHostKeyChecking=no root@127.0.1.1 'chmod +x /mnt/data/on_boot.sh'
+       ssh -o StrictHostKeyChecking=no root@127.0.1.1 'mkdir -p /mnt/data/on_boot.d'
+
+       rm /tmp/on_boot.sh
+
        echo "#!/bin/sh
             ssh -o StrictHostKeyChecking=no root@127.0.1.1 '/mnt/data/on_boot.sh'" > /etc/init.d/udm.sh
        chmod +x /etc/init.d/udm.sh
diff --git a/on-boot-script/packages/udm-boot_1.0.1-1_all.deb b/on-boot-script/packages/udm-boot_1.0.1-1_all.deb
new file mode 100644
index 0000000000000000000000000000000000000000..4d92c4c8da865d87978bbbb4ee77e610259b3c35
GIT binary patch
literal 2016
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

literal 0
HcmV?d00001