A week back, I tried to convert my local account to a Portable Home Directory that synced to the server. The experiment was partially successful, but partially not. So, I reverted back. This process basically meant that I had to delete my local account, and create a new one. This is the key piece to my problem that I’ll get to in a bit.
So basically, once I’d reverted, most things worked. I had some oddities with keychains that I fixed by randomly trying things until it worked. The weirder issue was with iCal.
In iCal, I could add events, and move events, but I couldn’t delete ANYTHING. I’d delete an account from iCal (like my google calendar account), it would go away for about 10 seconds, then come back. If I tried to move an event, it would show up in the new place, but the place where it used to be would still be there (so basically, it would duplicate). I’d delete the duplicate, it would go away for a few moments, then come back. I couldn’t figure it out.
I went so far as to remove my Mac from syncing to MobileMe, delete all the calendars, sync data, etc. Then re-add it to Sync. Everything would repopulate, and it would go right back to the way it was.
Finally I realized “wait, ACLs… they’re tied to UUID, which would have changed with the account delete/recreate. But, while I know how to mass delete ACLs, I’m not so sure how to recreate the ones that should be there (odd that repairPermissions doesn’t fix this for you).
Looking a bit, I found this page on Apple’s discussion forums that seemed to hold the answer.
So, I quit iCal, and I ran:
sudo chmod -R -N ~
chmod +a "everyone deny delete" ~/ ~/Desktop ~/Documents ~/Downloads ~/Library ~/Movies ~/Music ~/Pictures ~/Public ~/Sites
chmod +a "`id -un` allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown,file_inherit,directory_inherit" ~/Public/Drop\ Box
The sudo on the first one was for good measure to make sure it could remove any ACLs that were still tied to the previous UUID.
I relaunch of iCal later, and suddenly things worked. I could delete, move, etc. So, if you’re seeing weird behavior with applications where you can add stuff, but not delete, etc. You might try the above. Especially if for some reason your UUID changed.