3

I'm administering several computer labs using software from the Mac App Store. Is there any way to apply software updates from the command line (via Remote Desktop), instead of having to go around to each workstation and launch App Store.app?

smokris
  • 1,572
  • 6
  • 21
  • 32
  • 1
    There's a [similar question at Ask Different](http://apple.stackexchange.com/questions/13797/how-to-update-app-store-application-from-command-line), but it doesn't mention anything useful at the moment. – Lri Jun 23 '12 at 11:06

1 Answers1

1

There doesn't appear to be a command line helper or any scriptable cocoa classes you can latch on to for automation. Unlike the overall software update, you can only script the process of clicking buttons with a mouse.

If someone is logged into the mac (windowmanager is running), you can use Automator and the "watch me do" function to automate updates and storing your store password in the script fairly insecurely.

Here are two tutorials to get you started if this meets your needs.

http://www.tuaw.com/2009/01/19/mac-automation-creating-watch-me-do-workflows/

http://automator.us/leopard/features/virtual-user.html

Once you have a working script, you can use the command line open command to kick it off.

If the App Store app ever exposes that function to scripting you will have more options from the command line. It would be easy to use sdef, sdp and gen_bridge_metadata to dump the entire scriptable dictionary and script things using ruby from the command line, but at present, this is a non-starter.

edwardmp
  • 106
  • 1
  • 1
  • 9
  • Darn. Leaving workstations unattended while logged in as administrator (while updates are running via the Automator process you described) won't work for me — these computer labs allow 24-hour access, and that would present a security risk. Thanks for the suggestion, though — I didn't know about "watch me do". – smokris Jun 23 '12 at 04:21
  • 1
    Filed a Radar; cross-posted to Open Radar: http://openradar.appspot.com/radar?id=1786409 – smokris Jun 28 '12 at 13:40