Redback -
Looks clean, though I would recommend where 'Y:' utilized, substiture with your $public variable to allow easier changes to such pathing (never have to hunt for 'Y:' in your script). Also, if some of your KiX scripts are small (like complete.kix), maybe incorporate into main script and utilize GOSUB to reduce number of scripts to maintain.

Are the $apps custom apps, or off the shelf? I do not see anything updating the reg key related to app installation.

sealeopard - SU being used for installation of apps in the script to address user rights issue - script includes an administrator id (installer) and its password.

Bill