Running on MacOS Catalina Beta

Duplicati 2.0.4.19_canary_2019-06-17 is working fine on MacOS Catalina Beta with some minor tweaks. Two tweaks previously documented on this forum and a new third tweak. I could not get 2.0.4.5_beta_2018-11-28 to work reliably so skip straight to Canary.

First step is to run duplicati-server as a LaunchDaemon and the tray-icon as a LaunchAgent as documented here. Copy each plist into /Library/LaunchDaemons and /Library/LaunchAgents then load the plists into launchctl.

launchctl load -w /Library/LaunchAgents/net.duplicati.tray-icon.plist
launchctl load -w /Library/LaunchDaemons/net.duplicati.server.plist

Second step is to grant Full Disk Access to /Applications/Duplicati.app/ under System Preferences -> Security & Privacy -> Privacy as documented here. When you’re done it should look like this.

Third step is to grant Full Disk Access to /bin/bash. Be warned, this is insecure and is a quick and dirty workaround. I’m doing this on a personal machine but I’d think twice before doing this on a business laptop. As in the previous step click the + button then Cmd-Shift-G then enter /bin/bash. When you’re done it should look like this.

Discussing that last step. Mojave puts a sandbox around sensitive files such as Photos and Mail as an additional security layer on top of UNIX file permissions. The access should apply to all contents of /Applications/Duplicati.app/ including duplicati-server. In Mojave this worked. In Catalina it’s broken. You see access errors in the logs same as if Duplicati.app hadn’t been granted Full Disk Access.

[Warning-Duplicati.Library.Main.Operation.Backup.FileEnumerationProcess-FileAccessError]: Error reported while accessing file: /Users/nhand42/Pictures/Photos Library.photoslibrary/

I tried granting Full Disk Access to /Library/Frameworks/Mono.framework/Versions/5.18.1/bin/mono-sgen64 and /Applications/Duplicati.app/Contents/MacOS/duplicati-server but neither of those worked. But after granting access to /bin/bash it started backing up Photos and Mail. My best guess is Catalina doesn’t consider /bin/bash to be part of the /Applications/Duplicati.app/ bundle so the trust isn’t inherited.

An experiment would be to copy all dependencies including bash and mono under Duplicati.app/Contents/MacOS and modifying all the scripts to use the bundled versions.

Hi @nhand42, welcome to the forum!

Thanks for sharing your workaround for MacOS Catalina beta. I agree that bash permission tweak feels pretty ugly. Unfortunately I don’t have a machine that can run Catalina. :frowning:

I’m curious, what about 2.0.4.5 beta was unreliable for you?

I’m curious, what about 2.0.4.5 beta was unreliable for you?

Show Logs wasn’t working. It would only show a blank page. It also reported a corrupt database shortly after the Catalina upgrade. I started a repair but by that stage I’d lost faith so blew it away and started with a clean install of Canary.

I’m confident the Catalina upgrade was the source of both problems. Apple has made some sweeping changes to the filesystem which has broken other file-based software including Microsoft OneDrive. A developer has documented the changes which I’ve linked below.

Unfortunately I don’t have a machine that can run Catalina.

I’m running a second instance of Catalina using kvm on a bog standard Debian 9.0 installation. I can share the details if that would help for testing.