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.

1 Like

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.

Thanks for this! Fixed it perfectly. I didn’t bother running the server and client separately, just granted full disk access to Duplicati.app and bash.

Considering macOS 10.15 Catlina has officially released, is macOS unsupported now with Duplicati?

Thanks for posting the bash workaround. After upgrading to Catalina and working through the mono/cert issue (again), this was also needed to get Duplicati access to a USB removable drive in a backup source. (I’m on 2.0.4.23_beta.)

Any plan to patch duplicati so users do not have to use this workaround? I am hesitant to upgrade to Catalina…