After giving up Nextcloud – which is now overkill for me with 30.000 files of basic setup – I am syncing now using iCloud. As I am working only on the desktop, it would make sense to sync the desktop in regular intervals but unfortunately this can be done only together with the Documents folder (something I don’t want). SE has also no good solution, so here is mine
# make another Desktop in iCloud folder mkdir -p ~/Library/Mobile\ Documents/com~apple~CloudDocs/iCloudDesktop # sync local Desktop rsync -av --delete ~/Desktop/ ~/Library/Mobile\ Documents/com~apple~CloudDocs/iCloudDesktop/ # and run it every hour or so # launchctl load ~/Library/LaunchAgents/launched.com.desktop.rsync.plist <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>KeepAlive</key> <dict> <key>Crashed</key> <true/> </dict> <key>Label</key> <string>launched.com.desktop.rsync</string> <key>ProgramArguments</key> <array> <string>/usr/bin/rsync</string> <string>-av</string> <string>--delete</string> <string>/Users/xxx/Desktop/</string> <string>/Users/xxx/Library/Mobile Documents/com~apple~CloudDocs/iCloudDesktop/</string> </array> <key>RunAtLoad</key> <true/> <key>StartCalendarInterval</key> <array> <dict> <key>Minute</key> <integer>0</integer> </dict> </array> <key>StandardOutPath</key> <string>/tmp/rsync.out</string> <key>StandardErrorPath</key> <string>/tmp/rsync.err</string> </dict> </plist>