ML App Store Software Updates?

jwojda
Valued Contributor II

With the release of the Software updates only feature on the app store, i'd like to roll that script out to the 10.8.x systems we have (tried on a 10.7.5 and the app store now crashes after a couple seconds, so apparently it wasn't working in that).

So currently I have the MAS set as a restricted app, I'd like to get a smart group of 10.8 machines that have received script to enable the software updates only, then have that scoped to a policy that will launch the app store when updates are available.

i assume it is possible to have a script read that com.apple.appstore setting and then launch MAS if enabled?

Am I making it too complicated?

5 REPLIES 5

stevewood
Honored Contributor II
Honored Contributor II

Why not just use softwareupdate from the Terminal? That functionality still works, so there really isn't a need to open the MAS, IMO. I haven't started deploying 10.8 yet, but that is how I plan to deal with it.

jwojda
Valued Contributor II

Users tend to get annoyed when we deploy software to their systems w/o telling them. Not to mention the systems become sluggish and unstable until they reboot. Doing at login / logout they complain that the startup / shutdown times are too long.

So i started to go down the jamfhelper app / command line install to at least get them a popup asking if they want to do it with mixed results.

If I can get the appstore working then they will get the badge icon when an update is available, launch it, and be able to install them... hopefully w/o admin rights.

Theoretically - the smartgroup updates more than 0 would launch JamfHelper to ask if they want to install the udpates, the user clicks yes, and it launches the MAS for final install. The users have a status, they have the option to say not at this time. They stop complaining about not being told about the updates, and I stop getting asked "if the Mac App Store is restricted, how do I get updates?"

stevewood
Honored Contributor II
Honored Contributor II

I don't mean do it at login/logout, or do it in the background without them knowing about it. Utilize Self Service to get it done.

I have a policy scoped to an SG that only enables a Software Update policy based on SG membership. So if a machine has updates available, the user can run Self Service and see Software Update as an item. That policy simply runs "softwareupdate -ia" and is set to restart if necessary.

jwojda
Valued Contributor II

those were just ways we've done it in the past.

We've had the SS portion setup, but rarely did anybody use it, and with no real way to force install it after so many days. Granted we've never really published it in the past, and I'm trying to change that.

I'm just trying to balance the needs of security, legal, IT and the end user.

jwojda
Valued Contributor II

So I thought I would try and do this via EA and then a group off EA... I copied a script that checked if a machine had the Screensaver active and changed it to the com.apple.appstore... but it's reporting that it's disabledon a machine I verified had the app store in softwareupdate only mode.

#!/bin/sh
currentUser=`last -1 | awk '{print $1}'`

if [ -f "/usr/bin/mcxquery" ]; then
    result=`/usr/bin/mcxquery -user "$currentUser" | grep -A 1 -w com.apple.appstore | tail -1 | awk '{print $5}'`
    if [ "$result" == "0" ]; then
        result="False"
    elif [ "$result" == "1" ]; then
        result="True"
    else
        result="Not set."
    fi  
fi

echo "<result>$result</result>"