D

Due to a long story I’ve needed to set up my main photography computer from scratch, and have had to re-create all my little tweaks from the last 4 years of setting everything up just so. In amidst this was a nice method I have to keep my local presets and templates for develop, locations, watermarks, and metadata in sync between multiple computers.

It seems the best way that others have suggested is to simply copy the folders between computers, which works ok, but as soon as you make any changes on one or the other you’ll need to deal with re-synchronizing the folders again.

Not a great solution. Luckily there’s a great bit of software that will synchronize folders between computers and does it really, really well. It’s Dropbox.

Unfortunately, Dropbox synchronizes the “Dropbox” folder in your home directory, and your Lightroom presets are in (on a Mac) your “Library/Application Support/Adobe/Lightroom/“ folder. Here:

So the goal is to store all the folders of preset information that I wanted to sync on dropbox, but make sure that Lightroom could still access it where it expected it to.

To do this I used symbolic links (or ‘symlinks’) using a shell script. As you of course know, the Mac operating system is built on top of a Unix core, which lets particularly geeky folks like myself write scripts to do things under the hood.

DISCLAIMER

I take no responsibility for this. It’s possible it will completely blow up for you and destroy your computer and your life’s work, so make backups and take precautions before doing ANYTHING like simply copying and pasting this script and running it.

Additionally, this is for the Mac, not Windows. I don’t have a windows system easily available, but I’m sure something like this is possible using Windows (not Mac and Unix) technology, but I don’t know what it is. Also, the files are stored somewhere else, so even if you could run this script on windows it wouldn’t work, but the principals (storing things in Dropbox and then faking it out so that Lightroom finds them anyway) should still work.

How I Did It

Some, But Not All

I wanted to back up some of the folders, but not all. For me the metadata presets, location presets, brush and local development presets, and a couple of others were what I found necessary on my various computers, but others I either didn’t use or didn’t really work to sync. For example the “Library/Application Support/Adobe/Lightroom/Preferences/” folder contains a file that has recently opened catalogs. I wanted that to be local to each computer.

This meant I couldn’t just put the entire “Library/Application Support/Adobe/Lightroom/” on Dropbox, but only certain folders in it.

This whole thing is a two stage affair. First step is to get the data on Dropbox, then to link any other computers’ folders to it.

Step 0 – BACK UP!

Back up your Library/Application Support/Adobe/Lightroom/” folder. Seriously, just go to it by going into Lightroom, going to Preferences -> Presets and click the “Show Lightroom Presets folder”.

Then hit cmd-c and cmd-v to just copy the entire folder to a backup.

Backing up is fun!

See, you feel better already!

Step 1 – List Folders To Copy

I made a list of the folders

  • Develop Presets
  • Export Presets
  • Filename Templates
  • Import Presets
  • Local Adjustment Presets
  • Locations
  • Metadata Presets
  • Watermarks
  • Web Templates
  • sFTP

Step 2 – Copy Folders To Dropbox

After shutting down Lightroom I moved this list of folders (populated with all the presets I use) to a folder in Dropbox called “AppSync/Lightroom”.

Note that this is in the Dropbox folder

(Note: there are a few others in there as well, but I started with the list I mentioned)

Now you have a central storage location for your selected presets and templates. Now to get Lightroom to recognize them again!

Step 3 – Link Local Folders To Dropbox

Now I needed to symlink this list to the Application Support folder. This would be done on all computers that you want to have your presets synced to. For this I wrote a little bash script.

#!/bin/bash
echo “don’t you dare run this without looking”
exit

cd ~/Library/"Application Support"/Adobe/Lightroom/

declare -a FOLDERS=(
        "Develop Presets"
        "Export Presets"
        "Filename Templates"
        "Import Presets"
        "Local Adjustment Presets"
        "Locations"
        "Metadata Presets"
        "Watermarks"
        "Web Templates"
        "sFTP"
)

for i in "${FOLDERS[@]}"
do
        mv -i "${i}" "${i}".orig
        ln -s ~/Dropbox/AppSync/Lightroom/"${i}"/ .
done

You can copy the code above, modify it as needed, and then save it to your computer with a name like “link-lightroom-folders.sh” and then run it. Experience with bash scripting and unix permissions is required however.

This script simply does the following:

  • Declares a list of the folders you want (quoted because they contain spaces)
  • Loops through those folders and for each folder:
  • Renames the folder from <folder> to <folder>.orig
  • Creates a symlink from the folder in Dropbox to the folder in your “Library/Application Support” folder.

Note: it’s possible you’ll get errors here. If you don’t have all these folders (for example on my new computer I didn’t have an “sFTP” folder), or they already exist, the renaming from <folder> to <folder>.orig will give an error. Additionally, if you’ve run this script already (this is why you should backup first, see Step 0) the <folder>.orig will already exist, and you’ll be prompted to overwrite it or not.

After it will look something like this:

The terminal window isn’t just for über-geeks anymore.

Folders with the purple are the symlinks showing that they are now pointing to files in the Dropbox folder. Et voilà!

So that’s it. Your own requirements may vary, and there are many different ways to do this, this script is just one of them. In fact while writing out this article I found my previous script for doing it (helpfully called ‘foo.sh’ in a random Dropbox folder) which did it in a completely different way…. If you get this to work in a similar way on Windows using shortcuts or similar, please let me know in the comments!

I’m hoping that in the future this won’t be needed and that the ‘cloud’ part of Creative Cloud will become more cloud like and this will be supported natively as part of the Lightroom app.