Re: Push a plist file to all users - ownership question
Re: Push a plist file to all users - ownership question
- Subject: Re: Push a plist file to all users - ownership question
- From: Iceberg-Dev <email@hidden>
- Date: Wed, 3 Nov 2010 09:49:41 +0100
On Nov 3, 2010, at 6:31 AM, Don Montalvo wrote:
We have a plist file we need to push out to the User Template and
all existing users. We can push them easily to the User template
since we know the plist files need to be owned by root:wheel.
However, putting a copy of this file in each existing user's home
directory is proving to be a challenge.
We can use ditto to copy the file to each user's home directory:
#!/bin/sh
#
# loop
for i in $(/bin/ls /Users)
do
/usr/bin/ditto /System/Library/User\ Template/English.lproj/
Library/Preferences/com.mypreference.plist /Users/$i/Library/
Preferences/com.mypreference.plist
done
exit 0
But how do we then set the ownership of the file to each respective
user? I hope it's something we can add to the above script. Perhaps
another loop function?
PS, This is a vendor provided plist file that isn't compatible with
defaults command, so we have to push the file out to everyone.
Another solution could be to code a helper tool which can access
Directory Services.
Directory Services is IMHO one of the less intelligible API on Mac OS
X but it's possible to use existing code. For instance, you can start
with the bristow source code (Cocoa) to get the list of users
directory and the uid/gid:
http://s.sudre.free.fr/Software/files/bristow_src.zip
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Installer-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden