Skip to main content

Mac OS X "SOE" continued

Testing this at the moment, 10.7.x changed the location that server favorites are stored. They used to be .inetloc files in ~/Library/Favorites but now they are stored in a plist array in ~/Library/Preferences/com.apple.sidebarlists.plist

Note though, you can actually add inetloc files into your User Template folder and new users will get them, they just don't get stored as files now when users are manually creating them.
#* Default user preferences.
#+ Add default server favorites in "Connect to Server"
for USER_TEMPLATE in `sudo ls /System/Library/User\ Template`
do
 if [ -r "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences" ]; then
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers dict' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:Controller string CustomListItems' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems array' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:0 dict' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:0:Name string ${server1}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:0:URL string ${server1}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:1 dict' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:1:Name string ${server2}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:1:URL string ${server2}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:2 dict' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:2:Name string ${server3}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
  sudo /usr/libexec/PlistBuddy -c 'Add favoriteservers:CustomListItems:2:URL string ${server3}' "/System/Library/User Template/${USER_TEMPLATE}/Library/Preferences/com.apple.sidebarlists.plist" 
 fi
done

exit 0

Popular posts from this blog

Mac OS X "SOE" Day 7

Page Redirection > continued from day 6... In summary, here is my method for creating a Mac OS X 10.7.3 Standard Operating Environment "SOE" Image. Overview The goal is to create a "MASTER" non-booted SOE that can be used with multiple models and it multiple sites with different local requirements. My intention is to use this "MASTER" image in a manual restore procedure due to the fact netboot facilities cannot be made available to all the sites I support however the DMG files are netboot compatible. Requirements Lion Recovery Disk Assistant v1.0 "TARGET" workstation. A compatible workstation that will be used to install Mac OS X 10.7.3 and capture a DMG image(s). "ADMIN" workstation. A workstation with Disk Utility that you will use to capture your DMG image(s). External storage such as a USB HARD DISK. Setup Downloaded the Lion Recovery Disk Assi...

Mac OS X "SOE" Day 3

Page Redirection > continued from day 2... Ready to copy my scripts over, as previously mentioned I am thinking of having 3 phases; build - preps the image for dmg capture. firstboot - runs anything I can't do in build ie, writing to byhost files etc that require UUID or Macaddress. Basically machine/model specific settings. localise - runs localisation scripts such as language, locale etc etc. Basically a set of dynamic scripts in case you are an admin for multiple offices, multiple countries. So what's the minimum we need in the "build" phase? Disable the Setup Wizard. Disable the Registration Wizard. Create a local admin user(s) and set autologin for the firstboot phase. Enable root (set the password). Enable SSH Access Enable VNC Access Enable ARD Access Disable softwareupdate automatic updates "schedule" Cleanup/Minimise the dmg where possible. Set a firstboot loginhook for the second phase. What are some other n...

IIS looks normal, but site won't load.

Someone updated .Net Framework on Win2003 server (required for another app). Unfortunately didn't check existing IIS sites and their requirements so it broke a custom c# web site. Uninstalled without error in the OS, but website still 404ing, reboot and iisreset didn't fix it. "%systemroot%\Microsoft.NET\Framework\ VERSION \aspnet_regiis.exe" –i Then iisreset. All good :) Read about it here http://msdn.microsoft.com/en-us/library/k6h9cz8h(v=vs.80).aspx