This is kind of a random topic but today I set about syncing both my wife’s and my photostream accounts to one iPhoto library.
I tried several approaches but in the end I did this:
On my Mac OS X lion server, I made separate user accounts for both her and I. Each account is tied to our apple ids. On each account, I setup iPhoto to automatically import everything that comes through over photostream to disk. I made sure not to sync stuff to photostream though as that seemed to be making duplicates (kind of an obvious bug, but whatever).
Pretty easy so far. Here’s the tricky bit.
I needed to get those photos into the iPhoto library synced with the apple id that I use for our house media server. So I needed a process of extracting the photos from the user accounts I mentioned above and injecting them into the server iPhoto library. I found a utility called Hazel which could automate this kind of work – it can watch directories for new files and then perform actions on the files. The problem however was that I had no way of marking the files I had just extracted as already imported. I also couldnt remove them. This is because the server account didn’t have permissions to modify the iPhoto directories in the user accounts. I fiddled with this for quite a while modifying permissions here and there with no luck.
What I ended up doing was enabling the root user account, logging into it, and then setting Hazel up there. Works like a charm. The root user account runs with highest permissions, so it can do whatever it wants anywhere in the system. Security wise, kind of a risky thing enabling it but I’m (fairly) confident in my abilities here heh.
So now the root account has a Hazel script that does the following:
Iterates over the iPhoto directories for my wife and I.
If it finds new photos, it copies the files from the iPhoto libraries and places them into the Auto Import directory (inside of the iPhoto library) on the media server user account.
Then it deletes the found photos from my wife’s and my user accounts so that the photos don’t get imported again.
Since my wife’s and my user accounts on the server are only for iPhoto, it doesn’t matter if the photos disappear from there, especially since they are being migrated to the media server account. Also, since it’s just copying stuff from photostream, I don’t run the risk of messing any actual data up.
Now if my wife or I take a picture on our iPhones, it automatically gets injected to the media server iPhoto account, which syncs all over our house. Also, it’s convenient having one library for the family.
If only photostream handled videos…
Anyways, hopefully that helps someone out there. I did some googling before I did all of this and didn’t see anything too helpful.