- This topic has 4 replies, 4 voices, and was last updated 15 years, 7 months ago by
thomasb.
-
AuthorPosts
-
August 20, 2009 at 6:22 pm #376911
mlinde
ParticipantI’m at a new job (yah!) and working on a project introducing Mac into the environment. Initially, I’m working on a core boot image via instaDMG so there is a uniform starting place on new machines coming into the environment. One of the things I’m challenged with is AD integration. That in itself is no issue to me. What I’m trying to do right now though, is add a default login item of Keychain Minder to my instaDMG image. I used PackageMaker to build a package to deploy Keychain Minder, and then I figured I’d add the loginitems.plist to /System/Library/User Template/English.lproj/Library/Preferences/ so any new user account automatically had Keychain Minder as a login item, to assist with the messy password expiration rules. I created a default loginitem.plist with nothing but Keychain Minder (in a new account with no litter), took said file and built a package around it. Made sure it had correct permissions (root:wheel, -rw——-) in the package, build the package, but I can’t easily test it – as you need root access, not just administrative, to put things in /System/Library/User Template/ – so I did the bold thing and just added my package to the instaDMG build. Only problem is, it doesn’t deploy where it’s supposed to – in fact I’m not sure it deploys at all.
Any ideas how to test this, or where I should look for the file? I’ve double checked my package, and it’s definitely going to the correct place…
Thanks!
August 20, 2009 at 7:53 pm #376913Chris George
ParticipantWhat are you building the package in?
In general, Apple Installer packages have three choices for install authorization: No Authorization Required, Admin Authorization, and Root Authorization. If you look at the Info.plist for an already build package, you’ll see it listed under the “IFPkgFlagAuthorizationAction” key.
I know that Iceberg does allow you to select this in the package options; I’m not as familiar with PackageMaker, but I’d hope it would offer similar options. As long as you select Root Authorization for your package, no matter if you use it within InstaDMG or running it by itself, it’ll allow full rights to the entire file system, including the /System/Library/User Template directories.
(Metapackages — .mpkg files — will default to the most permissive choice of the packages within, I’m fairly certain. If the permission level is either not specified at all at the .mpkg level, or doesn’t match that “most permissive level,” Installer will throw a warning into the install logs.)
August 21, 2009 at 12:17 pm #376923mlinde
ParticipantI’m using PackageMaker 3.0.3. I can’t find an info.plist in my metapackage – but the package info for an individual package in the meta has this:
and it shows auth root…
I’ll admit I’m new to package making with anything but Composer, so anyone to provide direction I’m willing to take it – but I can’t buy any software for this at this time…
August 21, 2009 at 3:38 pm #376927Greg Neagle
Participant[QUOTE][u]What I’m trying to do right now though, is add a default login item of Keychain Minder to my instaDMG image. I used PackageMaker to build a package to deploy Keychain Minder, and then I figured I’d add the loginitems.plist to /System/Library/User Template/English.lproj/Library/Preferences/ so any new user account automatically had Keychain Minder as a login item, to assist with the messy password expiration rules.[/p][/QUOTE]
You’d be better off adding this as a global login item to /Library/Preferences/loginwindow.plist; or even better, using MCX.
Adding it to the Template doesn’t affect network users, nor existing users (including those moved over using the Migration Assistant.)
-Greg
August 28, 2009 at 1:36 pm #376996thomasb
ParticipantI agree. MCX would be the best way to go.
If that is not an option and you do not want to use [b]/Library/loginwindow.plist[/b], you could make a LaunchAgent and put it in [b]/Library/LaunchAgents[/b]. That will work for local and network accounts.
[b]/Library/LaunchAgents/com.company.KeychainMinder.plist[/b] – with the permissions root:wheel 644 (-rw-r-r)
[code]
[/code]
Label
com.company.KeychainMinder
ProgramArguments
/Applications/Keychain Minder/Keychain Minder.app/Contents/MacOS/Keychain Minder
RunAtLoad
(Note: It seems like escaped spaces is not supported in launchd plists) -
AuthorPosts
- You must be logged in to reply to this topic.
Comments are closed