This content is 12 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.
I use Adobe Lightroom for most of my digital photography workflow but as our family takes more and more pictures on a variety of cameras, other family members need to process images – and I’m not letting them near my Lightroom catalogue!
As we tend to use iPhoto every year to product yearbooks, calendars, etc., the solution we decided on was for me to copy unprocessed images over onto an old Mac Mini, which is running OS X 10.6 (Snow Leopard) with iPhoto (still version 6, part of the iLife suite shipped with OS X 10.4, which was what originally installed on the Mini).
Old software doesn’t support raw formats
All seemed good until I we tried to import the the first batch of photos that I’d sent over. iPhoto was happy with JPGs but didn’t like the raw images (.NEF from my Nikon D700 and .NRW from my Nikon P7100). Apple’s advice on supported digital camera RAW formats for OS X 10.6 suggested that the D700 should be OK (presumably not with old versions of iPhoto – one forum post suggested I’d need at least iPhoto ’08) but that I needed to install the Digital Camera RAW Compatibility Update 3.9 for the P7100, which would also need me to upgrade to iPhoto 11 (v9.3.2). The iPhoto upgrade was no big deal (£10.49 in the Mac App Store) but it will only run on OS X 10.7.4 or later. Lion is no longer in the Mac App Store but OS X 10.8 (Mountain Lion) is (and it’s only £13.49). Unfortunately, Lion and Mountain Lion will not run on Core Solo or Core Duo Macs (like my Mini).
I refuse to buy a new Mac for this – the whole point of the exercise was to provide a fit-for-purpose solution using the kit we already have – and a new machine doesn’t come into that (heck, I might as well just put Photoshop Elements on my wife’s Windows laptop), so it was back to the drawing board.
If my combination of OS X and iPhoto won’t read my raw files, I’ll just need to batch convert them to something else first…
Compiling and installing dcraw
on OS X
Dave Coffin’s dcraw
is a Linux utility for raw file conversion and I decided to use that on the Mac Mini but it needs a bit of work to get it installed. I found a blog post that describes the process to get the latest version of dcraw
working on OS X 10.7 (Lion) but the process is slightly different for earlier versions of OS X.
First up, I installed Apple’s developer tools – XCode. These are found on the operating system DVD for OS X 10.6 (in the Optional Installs folder) but are a free load from the Mac App Store for 10.7 and later. I did register for a developer account and started downloading version 3.2.6 but then realised that it was a 4.1GB download and retrieving the DVD from the loft was easier. After installing XCode from the DVD, I updated to 3.2.6 using the OS X Software Update utility although other versions of OS X might have a slightly different XCode upgrade process.
The Unix Command Line tools are an install option on XCode 3.2.6 (they can be downloaded from inside XCode from version 4 onwards) but, once these were installed, the next step was to download and install MacPorts. Again, there are different versions according to the release of OS X in use but I downloaded the .DMG for OS X 10.6 and then kicked off a Terminal session.
Once in Terminal, I entered the following commands:
su admin
sudo port install dcraw
following which MacPorts did all of the work to download and install dcraw
and all of its dependencies.
Batch converting raw images on the Mac
With dcraw
installed, there are many options for processing images but the basic syntax may be found by opening Terminal and typing:
\opt\local\bin\dcraw
Camera Hacker has some examples of dcraw
use but I used the following commands to bulk convert batches of .NEF and .NRW files to .TIFF format:
dcraw -a -w -v -T *.NEF
dcraw -a -w -v -T *.NRW
One final tweak before import the files to iPhoto was to set the file dates to match the camera timestamp (without this, iPhoto seemed to think that the images were taken on the day they were imported):
dcraw -z *.tiff
The resulting files were ready to import to iPhoto for family use, with no risk to the master copies that are stored on my MacBook.