This howto allows you to move your entire photo store to a different location, and instruct F-Spot to use this new path without re-importing photos and risking data loss:
QUIT F-SPOT FIRST!!!
1. Move the photo store where you want it to be (if you haven’t done so already!)
2. Back-up your F-Spot database
cp ~/.gnome2/f-spot/photos.db ~/.gnome2/f-spot/photos-backup.db
3. Install and start sqlite
sudo apt-get install sqlite3
5. Perform an update command against the “photos” table. Make sure you set the paths to match your own
update photos set directory_path = '/NEW/PATH' || substr(directory_path,length('/OLD/PATH/'),length(directory_path)) where directory_path like '/OLD/PATH/%';
update photos set directory_path = '/home/sean/Pictures/photos' || substr(directory_path,length('/home/sean/Photos/'),length(directory_path)) where directory_path like '/home/sean/Photos/%';
6. Quit sqlite
From here on, assuming these steps worked, you should be able to start F-Spot and all your photos are still found!
If something went wrong, you can revert to the old database by moving the photos back where they were, and running this command:
mv ~/.gnome2/f-spot/photos-backup.db ~/.gnome2/f-spot/photos.db
NOTE: F-Spot appears to rebuild it’s thumbnail cache when you start it the first time after doing this, you will notice that all the photos have no images. Leave it for a few minutes and you should find all the photos will eventually flood back into existence.