AdminLauncher

Copyright 2004-Present, NC State University

Authors:
Hua Ying Ling – Code, design, and implementation.
Everete Gray Allen – Concept, direction, testing and documentation.

Email:
help@ncsu.edu

URL:
Binary – http://projects.ncsu.edu/mac/downloads/adminlauncher.zip
License

Introduction

AdminLauncher is an application launcher which provides one click buttons to launch applications, documents, etc. A tabbed interface is available to group applications so they can be found quickly.  The main administrative feature of this launcher is that one must have an MacOS X, administrater password to add or remove buttons and tabs on the launcher.  This is useful in lab, kiosk or public workstation environments where administrators want to provide a consistant interface for launching applications. Other administrative features are a) Quit menu is disabled, b) there is no close button on the window, and c) the info pane will display any text documents found in the folder /Library/ApplicationSupport/AdminLauncher/.  As a feature, the AdminLauncher will not show icons for applications, etc. which are not at the exact path and name as when they were added.  This eliminates missing icons or launcher buttons which do not work.  The launcher preferences file, launcher.plist, is intended to work for all users and be stored in /Libaray/Preferences where it is installed by default.  This simplifies deployment changes in a multi-user environment.  See deployment tips for a way to start AdminLauncher for every user at login.

Requirements
MacOS X 10.3.  AdminLauncher may work on earlier versions of MacOS X but has not been tested.  There is no version for MacOS 9 and there never will be. This software is released under the BSD license.  The source is available upon request.

Install
Run the installer and let it do the work.  The installer should:
1) Put AdminLauncher.app in /Applications
2) Put launcher.plist into /Libarary/Preferences
3) Create the folder /Libarary/Application Support/AdminLauncher
4) Put NCSULicense.txt into /Libarary/Application Support/AdminLauncher

Use
Run AdminLauncher and select the Preferences.
Click on the grey circle in the lower right corner of the preferences dialog and type an admin name and password to unlock the dialog.
Add or delete tabs and programs as needed.
Press ok to close the dialog and save changes.
Click a button to launch an application.

Known Issues
Aug. 8, 2004 – Two new issues with preferences files have been reported since release.
a) the changes to the preferences file /Library/Preferences/launcher.plist from the preferences dialog are not saved unless quit is enabled in the Preferences dialog and the AdminLauncher is actually quit using the Quit menu item and
b) the Save As… button in the Preferences dialog writes a bad launcher.plist file.
We are working to fix the problem.

1) Sometimes the tool tips show the wrong application name in multi-tabed setups.

2) The lock preferences button in the prefrences panel does not relock until AdminLauncher is quit.

3) There is no insert indicator to show where an application is added in the preferences dialog.  Applications are added to the end of the list if no item is select or directly below the selected item. Same is true for tabs.

4) Save As… is confusing.  The Save As … button in the preferences dialog is meant to save a copy of the plist so it can be distributed to other machines running AdminLauncher.  Clicking ok in the preferences dialog will save the changes made to the tabs, application list, etc in the default preferences file stored in /Library/Preferences/launcher.plist.

5) AdminLauncher does show in the dock, process list and force quit dialog so it can be quit by a knowledgable user.

Deployment tips

I)   Start for every user
This tip appears to work in 10.1-10.3 but may break at any time when Apple releases a new software update. So it turns out the Apple follows their own preferences model guidlines for user Startup Items (aka user Login Items).  Opening System Preferences:Accounts, choosing a user and clicking on Startup Items in 10.3 and adding an application will yeild a preferences file at ~/Library/Preferences/loginwindow.plist (NOTE: this is not the same as com.apple.loginwindow.plist).  You can add AdminLauncher to Startup Items for a single user and then after that works move loginwindow.plist to /Library/Preferences and it will work for all users at any login. Sometimes applications like Keyserver from Sassafras Software will have already created /Libarary/Preferences/loginwindow.plist. If that is the case, you might want to edit the file instead of replacing it.  This is a plist (property list) file which is just text so edit it with BBEdit or Text Edit but be careful to save it as text not RTF.
To add AdminLauncher (or any application) find the AutoLaunchedApplicationDictionary key and add a dictionary like the example below:

<key>AutoLaunchedApplicationDictionary</key>
<array>
<dict>
<key>Hide</key>
<false/>
<key>Path</key>
<string>/Applications/AdminLauncher.app</string>
</dict>
</array>
There might be an AliasData key in other dictionary entries but our experience has shown it is optional.

II)  Replace Finder for Single User
According to Apple Developer Technical Note 2062 (http://developer.apple.com/technotes/tn2002/tn2062.html) the Finder can be replaced for a single user by opening the terminal and typing
defaults write com.apple.loginwindow Finder /Applications/AdminLauncher.app
It might be possible to do this system wide but I would not reccommend it.

III) Quick and dirty way to add buttons
The launcher.plist file in /Library/Preferences is just a text file with a lot of file urls in it.  An entry for a button should look something like this:
<dict>
<key>path</key>
<string>file://localhost/Applications/DVD%20Player.app/</string>
</dict>
To add a button without using the preferences simply copy and paste the dictionary entry above or any in the launcher.plist and change the file url to the exact path to whatever it is you want to add. Quit and restart AdminLauncher if running to see the new button.  If you don’t see the button check to see if the path is correct and that it is url encoded (ie My App.app is My%20App.app).

EGA 05042004