Previous 1 2 Next 16 Replies Latest reply: Oct 11, 2011 7:21 AM by Dessicator
drfrot Level 1 Level 1 (5 points)
I have seen questions about sharing libraries between two Aperture users on one Mac, but I have a subtle take on that...

I'm the Aperture user in the household, however, my wife and I share a laptop (2 user accounts). Our recent honeymoon shots are all in various projects in an Aperture library (managed files) that lives under my user account (~/Pictures)

All my wife needs is read-only access to the previews, so that she can insert pictures into Pages documents, or upload them when using Safari, or attach to mails. There's no requirement to open Aperture, per se, or to edit anything - just to have access to those previews/albums/slideshows that live inside the library.

Is this sort of "light touch" access possible?

I have been into the Mac Sharing preferences and made my ~/Pictures folder "Read only" for "All users", but when we're logged in as her, and she opens e.g. Pages, the Media Browser doesn't even have Aperture as an option.

Can anyone shed light on how I might do this?

Thanks

Giles

 20" iMac 2.4GHz Intel Core 2 Duo 4GB RAM, Mac OS X (10.6.4)
  • Terence Devlin Level 10 Level 10 (134,945 points)
    For this to be possible you would need for her account to use your Library as a default Aperture Library.

    Aperture is not designed for multi-users so I'm not sure that this will work, but it does work with iPhoto. You might be lucky...

    To do this you will need to move the Library to the Users/Shared Folder, then open it from first one and then the other account.

    Even so, you might not be able to open it from her account because of permissions issues. In that case move it to an appropriately formatted disk and set it to ignore file permissions.

    To chose a Library to open: Hold down the option (or alt) key key and launch Aperture. From the resulting menu select 'Choose Library'

    An alternative:

    Share the previews with iPhoto and then use iPhoto Sharing to allow her access to the pics.

    Regards

    TD
  • drfrot Level 1 Level 1 (5 points)
    Thanks Terence. I don't really want to move my library to an external drive - the iPhoto sharing option sounds far better - can you tell me more?

    I've set the Aperture "Preview" preferences to Share previews with iLife & iWork "Always". Would I still have to move the library somewhere for my wife to access the iPhoto previews??

    Cheers

    G
  • Terence Devlin Level 10 Level 10 (134,945 points)
    1. Launch iPhoto.

    2. In iPhoto go File -> Show Aperture Library - a media browser of the Aperture Library appears.

    3. Drag the Projects/ Albums/ Photos you want her to have to the iPhoto Window. iPhoto will import them.

    4. Go to iPhoto -> Preferences -> Sharing and enable sharing of the iPhoto Library,

    5. Leave iPhoto running and use Fast User Switching to open the other account.

    6. In that account,launch iPhoto, go to iPhoto -> Preferences -> Sharing and enable 'Look For Shared Libraries'. Your iPhoto Library Library will appear in the other source pane.

    She can drag a pic from the Shared Library to her own in the iPhoto Window.

    Remember iPhoto must be running in both accounts for this to work.

    Regards

    TD
  • drfrot Level 1 Level 1 (5 points)
    Thanks TD.

    I've imported the whole lot into her iPhoto (I never use it, so having it open on both accounts seems a bit OTT). Ok, it's not dynamic, and won't reflect any edits I make, but it'll do for now and is better than nothing.

    Poor show on Aperture, I say!

    Thanks again for your prompt help.

    G
  • Terence Devlin Level 10 Level 10 (134,945 points)
    Poor show on Aperture, I say!


    Why? Because it's not a family orientated photo app like iPhoto? But, instead is a pro level app aimed at Pro users?

    Regards

    TD
  • drfrot Level 1 Level 1 (5 points)
    "You’ll notice that the things you’ve done in iPhoto can be done in Aperture 3"... [http://www.apple.com/uk/aperture/iphoto-to-aperture>

    ...except sharing between users; something I'd say was crucial if you're using Aperture as your grand storage mechanism.

    They market it very much as iPhoto-plus (and people seem unlikely to use both), so denying this functionality seems a bit daft to me, that's all.

    G
  • Terence Devlin Level 10 Level 10 (134,945 points)
    Aperture menu -> Provide Aperture Feedback and let the developers know what you think.

    Regards

    TD
  • Frank Caggiano Level 7 Level 7 (25,715 points)
    Setting up an Aperture Library to be shared among multiple users isn't to difficult. The one drawback is that Aperture requires write access to the library just to open it, even if no changes are made.

    Now two notes of caution:

    First, I haven't done much more then test to see if the basic concept works. I'm able to open the library from multiple accounts access images see changes made by either user, etc. Haven't done long term
    testing to see if there are any gotcha's.

    *READ THIS*
    *Users can't access the library at the same time*, aperture has no provision for file locking so if two users have the library open I'm pretty sure it wouldn't end well. Make sure only one copy of Aperture is running at a time.

    Second it requires you to run some basic Unix commands from the terminal, If you're uncomfortable doing this or have never done it before or can't follow directions or type you might want to think twice.

    And finally you need to make a complete copy of your library just in case...

    If there is still interest in this I'll post the procedure.

    Message was edited by: Frank Caggiano
  • Dessicator Level 1 Level 1 (35 points)
    Why? Because it's not a family orientated photo app like iPhoto? But, instead is a pro level app aimed at Pro users?


    It seems to me that sharing libraries would be even MORE essential for a pro app, so that teams of colleagues could work on projects together.
    Jim
  • Dessicator Level 1 Level 1 (35 points)
    Below is how to fully share an Aperture library between two user accounts on one mac. I have not tried to do the partial permissions for one user that you want, but it should be easy to do. Instead of creating a group, and assigning ACLs to them (see below), make separate ACL entries for you and your wife. Your entry is complete, as given below; hers would leave out certain permissions if you are worried about her deleting or messing up something.

    Aperture is not designed to share photo libraries between user accounts on a single computer, but it is not hard to convince it to do so. With a single command you can edit the Access Control Lists (ACLs) for the library, as suggested to me by BobHarris in the Unix forum. I worked out the details and tested it. In my tests, both users could import photos to the library from an iPhone, each user could see, edit and delete photos imported by the other user, and each user could see and edit photos edited by other users. Each user could add photos already in their home folder and the other user could see and delete them. Each user could sync their iPhone in iTunes with the Aperture Library and choose different albums or projects to be synced.

    Caveats:
    1. Although I've done a lot of testing, it is possible that some manipulation can be done by a user in Aperture that will disturb the sharing. I doubt it, but it is possible.
    2. The method requires some work in the Terminal. If you're not used to it, and even if you are, the Terminal can be an unfriendly, unforgiving environment. With a few short keystrokes, it is possible to delete everything on your hard drive and every drive attached to your computer. There is no undo. So mind your p's and q's when working in the Terminal. Check your command carefully twice before hitting enter.
    3. Of course, the library will be fully shared, so the person(s) you're sharing it with can do anything you can do. It is possible to adjust it so one person has full control and the other has only viewing access, but I haven't tried that.
    4. This was all done in OSX 10.6.5, Aperture 3.1. It should work at least in 10.5 and above.
    5. I suggest you choose a time to do this when you won't be adding important new photos to your library for a while. You will then have time to test it and have your backup to fall back on if needed.
    6. I have not tried to get into a library while the other user has it open. Not sure this is possible, or what the consequences would be. I suggest each user quit Aperture when done. If you try this, let me know what happens!

    Background Info:
    1. Although the Aperture Library (aka Aperture Library.aplibrary) appears to be a single file in the Finder, it is actually a directory or folder with many directories and subdirectories inside it, and more files than you can shake a stick at. There are many more files than you have master photos.
    2. The reason why sharing does not work by default is permissions. When a user imports or edits photos in his Library, Aperture assigns permissions that make some files accessible to him alone. These are the standard Unix permissions.
    2. ACLs are a more flexible and more complex form of permissions than the standard unix permissions. A key point is that ACLs take precedence over standard permissions. As far as I know, Aperture does not add or edit ACLs. So it doesn't matter what Aperture does to the standard permissions in the Library, if your ACLs say that a user can do something, that wins. The ACL I suggest is inherited by new files that are added to or created in the Library.

    Steps:
    1. This must be done from an administrator account. Look in System Preferences > Accounts pane; it should say Admin under your name.

    2. These steps assume that you are starting with a Library in one of the user's home folders, and that you haven't messed with permissions on the Library. If that is not the case, you can create a new Library in Aperture, or you can edit the permissions in the existing library to get them back to something like they were. In the latter case, I would suggest that you type in Terminal, replacing yourusername with your user name:
    sudo chown -R yourusername:staff /Users/yourusername/Pictures/Aperture\ Library.aplibrary
    sudo chmod -R 755 /Users/yourusername/Pictures/Aperture\ Library.aplibrary
    You will have be asked for your password after the first command.
    (Actually the default permissions vary slightly among the files and folders in the Library, but that doesn't seem to matter.)

    3. Make a new group for the people who will share the library. I called my group 'aperture'.
    a. Go to System Preferences > Accounts pane
    b. If the padlock at lower left is locked, click it and enter your password if asked.
    c. Click the plus sign above the padlock.
    d. In the drop-down pane, for New Account (or New), choose Group.
    e. Enter a name, I chose 'aperture'.
    f. Choose the members.

    4. Make sure Aperture is not running. Make a copy of your Aperture library as a backup. Make sure 'copy' or 'bak' or something is added after the file extension so that you or Aperture don't try to use it.

    5. Find the Shared folder among the user's home folders ( /Users/Shared ). Inside it, make another folder to hold the shared Library. Let's say you call it ApertureLibrary. Drag your library from your Pictures folder into the new folder.

    6. Open Terminal in your Utilities folder. Type
    cd /Users/Shared/ApertureLibrary
    (assuming you named the folder as I did). This gets you into the right place.

    7. This is where the magic happens. Type the following, replacing 'aperture' with the name of your group, and 'Aperture\ Library.aplibrary' with the name of your Library. If you use different names, it may be best to copy and paste this into TextEdit, make the edits, then copy and paste into Terminal. Terminal won't let you back up and make edits in select places without some special juju. Don't insert any hard line breaks, it is a continuous command that is wrapped here.
    chmod -R +a "aperture allow list,addfile,search,delete,add_subdirectory,delete_child,file_inherit,directoryinherit" Aperture\ Library.aplibrary

    8. In each person's user account, open and point Aperture to the new library location using File > Switch to Library.

    That's it. Test it extensively before adding any important new photos to your library, and keep your backup around. If you ever want to undo all the ACLs, you can navigate to the folder again in Terminal and type:
    chmod -RN Aperture\ Library.aplibrary
    This should delete the ACLs on all the files and folders in the Library.
  • ACKACK Level 1 Level 1 (0 points)
    thanks Dessicator the procedure works well.
  • sfaulk Level 1 Level 1 (10 points)
    Hey Dessicator,
    These steps are super helpful but I do have a question so I don't mess things up. I have a Mac Pro with 4 drives and I have the Aperture Library on a drive all by itself. Since Aperture is not in my home folder how would I properly set it up as you have described?
  • drewpost Level 1 Level 1 (0 points)

    Thanks for this - One thing. I made it to the last command and I keep getting an error: chmod: Invalid permission type 'addfile'

     

    every time. Any advice?

  • ATvandenBosch Level 1 Level 1 (0 points)

    Thanks a lot Decissator, by far the best post I could find on the subject.

     

    @Drewpost, some of the permission words between 'allow' and the unquote sign need an underscore. This is how they are spelled for the command to work.

     

    list

    add_file

    search

    delete

    add_subdirectory

    delete_child

    file_inherit

    directory_inherit

Previous 1 2 Next