diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mnt-config.mount b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mnt-config.mount new file mode 100644 index 000000000..fd886e1b7 --- /dev/null +++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/mnt-config.mount @@ -0,0 +1,8 @@ +[Unit] +Description=HassOS config partition + +[Mount] +What=LABEL=hassos-config +Where=/mnt/config +Type=auto +Options=ro diff --git a/buildroot-external/rootfs-overlay/usr/sbin/hassos-config b/buildroot-external/rootfs-overlay/usr/sbin/hassos-config index f274ad72e..583ce2991 100755 --- a/buildroot-external/rootfs-overlay/usr/sbin/hassos-config +++ b/buildroot-external/rootfs-overlay/usr/sbin/hassos-config @@ -1,15 +1,12 @@ #!/bin/sh -set -e -# Check if hassos-config is present -if ! findfs LABEL="hassos-config" > /dev/null; then - echo "[Warning] No hassos-config partition found!" +# Mount config folder +systemctl start mnt-config.mount +if ! systemctl -q is-active mnt-config.mount; then + echo "[Warning] No config partition found" exit 0 fi -# Mount config partition -mount -o ro LABEL="hassos-config" /mnt/config - ## # NetworkManager if [ -d /mnt/config/network ]; then @@ -18,7 +15,7 @@ if [ -d /mnt/config/network ]; then rm -rf /etc/NetworkManager/system-connections/* cp -f /mnt/config/network/* /etc/NetworkManager/system-connections/ - nmcli con reload || true + nmcli con reload fi ## @@ -54,4 +51,4 @@ if ls /mnt/config/*.raucb > /dev/null; then fi # Cleanup config partition -umount /mnt/config +systemctl stop mnt-config.mount