Nikon D70s/D80/D300 and Linux
On Sept 1, 2006, not even a week before the D80 came out, I got a Nikon D70s. Here's some useful
tips for those who work in linux. On Jan 27 2007 I replaced the D70s with the D80. Very nice as
well. On May 16, 2008 replace that one with a D300. Also nice. Nikon plays well with
linux. Firmware upgrades are simply done by placing the right two files (A and B) in
the root directory of the flash card and hitting the right menu button on the camera.
MSC (mass storage) mode ensures that a USB cable will see the camera like a
hard drive. The PTP mode also works, so is the claim, i've not tried
that. Using RAW (NEF) is also easy, the new 14bit
option seems to work as fine as the old 12bit option. I use it in a gimp
plugin.
Example of using jigl with the camera scripts
In the example below I am using a different directory for the pictures (they could
eventually be stored offline or on a DVD), and the web 'copy'. Most of the
time the web 'copy' is just a set of symbolic links into the actual picture data
tree. This way the only archival thing we need in this directory are the
gallery.dat and rsync.dat file. The rest could in theory be removed
(the actual $root_name/ subdirectory, and the slides/ and thumbs/ directories
used by jigl). But you don't have to do this. You can just as well
keep the gallery.dat and rsync.dat file in the picture directory.
cd $my_picture_disk_for_today
get-nikon (grab the latest pictures from the camera)
cd $my_web_copy_for_today
jigl -cg (make a fresh gallery.dat file)
add-jpg -a $my_picture_disk_for_today/*JPG (add all JPG's from what we just downloaded)
edit gallery.dat (set -wd name, and optionally add -lo; also set TITLE's)
edit rsync.dat (set the machine/root_name/pics in rsync.dat, see do_sync for template)
do_sync
Any subsequent new pictures can now be updated on the webpage as follows:
cd $my_picture_disk_for_today
get-nikon (grab the latest pictures from the camera)
cd $my_web_copy_for_today
add-jpg $my_picture_disk_for_today/DSC_0103.JPG a nice flower (take this pictures, add some annotation)
add-jpg $my_picture_disk_for_today/DSC_0110.JPG watch the bird fly (another one, and some annotation)
....
do_sync (runs jigl and updates the webpage)
Directory structure:
$my_picture_disk_for_today/ where all the originals live
$my_web_copy_for_today/ where gallery.dat and rsync.dat live
$my_web_copy_for_today/$root_name your local WWW mirror tree
$my_web_copy_for_today/slides temporary cached copies for jigl
$my_web_copy_for_today/thumbs temporary cached copies for jigl
Note that $my_picture_disk_for_today and $my_web_copy_for_today can be the same location on your disk.
Other useful references