various improvements
[distro-setup] / radicale-setup
index 929a14fc27caabd205da810f80bfff259bf48dfa..3cfaa8225a2b424aed0d33d6f0f54845a401482b 100755 (executable)
@@ -1,8 +1,16 @@
-#!/bin/bash -l
-set -x
+#!/bin/bash
+
 [[ $EUID == 0 ]] || exec sudo -E "$BASH_SOURCE" "$@"
 
+if [[ -e /b/errhandle/err ]]; then
+  source /b/errhandle/err
+else
+  set -eE -o pipefail
+  trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
+fi
 
+source /a/bin/bash_unpublished/source-state
+source /a/bin/distro-functions/src/package-manager-abstractions
 # davdroid setup instructions at the bottom
 
 # main docs:
@@ -25,7 +33,7 @@ fi
 
 d=/etc/systemd/system/radicale.service.d
 mkdir -p $d
-sudo dd of=$d/override.conf <<EOF
+cat >$d/override.conf <<EOF
 [Unit]
 # this unit is configured to start and stop whenever openvpn-client@mail.service
 # does
@@ -34,9 +42,9 @@ 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
+systemctl daemon-reload # not sure this is needed
 
 pi-nostart radicale
 
@@ -56,7 +64,7 @@ find /o/radicale -xdev -exec chgrp -h 609 {} +
 # I moved /var/lib/radicale after it's initialization.
 # I did a sudo -u radicale git init in the collections subfolder
 # after it gets created, per the git docs.
-lnf -T /o/radicale /var/lib/radicale
+/a/exe/lnf -T /o/radicale /var/lib/radicale
 
 # from https://www.williamjbowman.com/blog/2015/07/24/setting-up-webdav-caldav-and-carddav-servers/
 
@@ -75,7 +83,8 @@ setini() {
 setini hosts 10.8.0.4:5232 server
 
 if [[ $HOSTNAME == $MAIL_HOST ]]; then
-    sgo radicale
+    systemctl start radicale
+    systemctl enable radicale
 fi
 
 # disable power management feature, set to 240 min sync interval,
@@ -83,10 +92,9 @@ fi
 
 # davdroid from f-druid.
 # login with url and user name
-# username ian,
-# url https://cal.iankelling.org
+# url https://cal.iankelling.org/ian
 # username ian
-# pass, see password manager
+# pass, see password manager for radicale
 #
 # add account dialog:
 #