minor tweaks
[distro-setup] / radicale-setup
index cb27eda4ec1d93165c50723d72d10f59a7938fea..531f1ecd6f995ab2e3277b256dca752d12bc905c 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/bash -l
-
+set -x
 [[ $EUID == 0 ]] || exec sudo -E "$BASH_SOURCE" "$@"
 
 
 # created password file with:
 # htpasswd -c /etc/davpass dav
 
+vpn_ser=openvpn-client
+if [[ ! -e /lib/systemd/system/openvpn-client@.service ]]; then
+    vpn_ser=openvpn
+fi
+
 d=/etc/systemd/system/radicale.service.d
 mkdir -p $d
-sudo dd of=$d/override.conf <<'EOF'
+sudo dd of=$d/override.conf <<EOF
 [Unit]
 # this unit is configured to start and stop whenever openvpn-client@mail.service
 # does
 After=network.target
-BindsTo=openvpn-client@mail.service
-After=openvpn-client@mail.service
+BindsTo=$vpn_ser@mail.service
+After=$vpn_ser@mail.service
 
 [Install]
-RequiredBy=openvpn-client@mail.service
+RequiredBy=$vpn_ser@mail.service
 EOF
+ser daemon-reload # not sure this is needed
+
+pi-nostart radicale
+
+# use persistent uid/gid
+IFS=:; read _ _ uid _ < <(getent passwd radicale ); unset IFS
+IFS=:; read _ _ gid _ < <(getent group radicale ); unset IFS
+if [[ $uid != 609 ]]; then
+    systemctl stop radicale ||:
+    usermod -u 609 radicale
+    groupmod -g 609 radicale
+    usermod -g 609 radicale
+fi
+find /o/radicale /var/log/radicale -xdev -exec chown -h 609 {} +
+find /o/radicale -xdev -exec chgrp -h 609 {} +
 
-pi radicale
 
 # I moved /var/lib/radicale after it's initialization.
 # I did a sudo -u radicale git init in the collections subfolder