New Dropbox Files Location in Ventura for Some Macs Affects Some Scripts

I recently updated my two computers to Ventura. They run side-by-side and share three monitors, a mouse, and a keyboard. So far everything has been fine, since while I am a heavy computer user, I am not a specialized user, if that makes sense, except for the Unixy underpinnings.

One of the things that has broken, though, is calling the same Unixy scripts on both Macs. They are (or were) located in an identical directory structure relative to the Dropbox folder so that the synced scripts could run from either computer and I didn't have to pay attention to which computer I was on. (It makes running two computers on three monitors a lot easier.)

However, Dropbox has now changed the default location of its main parent folder for one Mac but not for the other.

For Mac A, an Intel machine running Ventura and Dropbox 159.4.5870 (the latest available), the "Sync" tab of Dropbox settings has changed. Underneath where it says "Dropbox folder location" it says, "This version of macOS requires Dropbox folders to be stored here: /Users/username/Library/CloudStorage/Dropbox/". This was a storage location change forced on me yesterday when Dropbox updated itself.

For Mac B, an M1 machine running Ventura and Dropbox 160.4.4703 (the latest available), the "Sync" tab of Dropbox settings look as it usually has. Underneath where it says "Dropbox folder location" it says, "Choose where your Dropbox is located on this Mac." Then the location I have chosen is /Users/username/Dropbox/".

I tried creating the CloudStorage directory tree and moving the Dropbox folder to match the other Mac, but that was not allowed.

The KM settings are syncing fine (after clicking and unclicking "sync macros" in the KM settings; thanks for the past discussions in the forums for that help).

However, now I can't run the same scripts that use hard-coded paths to files in the shared Dropbox folder on both computers because each computer now has different paths to the same synced files.

The solution was easy enough: creating a symbolic link in the Terminal on Mac A:

ln -s /Users/username/Library/CloudStorage/Dropbox /Users/username/Dropbox

That works like a Mac alias but at a lower-level in the OS; a Mac alias on its own does not work with shell scripts, Python, etc. Now, as far as my scripts are concerned, anything in the Dropbox folder is in the same relative place on both Macs.

I hope this helps anyone else who may have this problem.

3 Likes

Thanks for this. I have one Mac, and I have put 90 percent of my files inside my Dropbox folder. Many of my macros rely on text and automator files inside Dropbox. The thought of fixing all of the paths inside the macros is daunting. Are you saying that, after moving Dropbox to CloudStorage, all I have to do is create a symbolic link to the Dropbox folder in my Home directory, and that's it? I don't have to alter the filepaths inside my macros?

1 Like

Yep. That's all I did and it worked just fine.

1 Like

This seems to happen automatically now. I have dozens of references to ~/Dropbox in my macros, and they all seem to be working. Dropbox must have created the symlink for me.