Guest User

Untitled

a guest
Dec 22nd, 2012
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.36 KB | None | 0 0
  1. #!/bin/sh
  2. #powerusers_installcheck
  3. #checks the current configuration for power users and returns a value that Munki understands
  4.  
  5. PLISTBUDDY="/usr/libexec/PlistBuddy"
  6. AUTHFILE="/etc/authorization"
  7.  
  8. #Running only on Mondays
  9. ISMONDAY=date | cut -d" " -f 1
  10.  
  11. if [ ! "${ISMONDAY}" = "Mon" ] ; then
  12.     echo "FYI not Monday. exit -1"
  13.     exit -1
  14. fi
  15. ######
  16.  
  17. UPDATESCAN=`$PLISTBUDDY -c 'Print :rights:com.apple.SoftwareUpdate.scan:rule' $AUTHFILE`
  18. if [ ! "${UPDATESCAN}" = "allow" ]; then
  19.     exit 0
  20. fi
  21.  
  22. UPDATEINSTALL=`$PLISTBUDDY -c 'Print :rights:system.install.apple-software:rule' $AUTHFILE`
  23. if [ ! "${UPDATEINSTALL}" = "allow" ]; then
  24.     exit 0
  25. fi
  26.  
  27. DATETIME=`$PLISTBUDDY -c 'Print :rights:system.preferences.datetime:group' $AUTHFILE`
  28. if [ ! "${DATETIME}" = "everyone" ]; then
  29.     exit 0
  30. fi
  31.  
  32. ENERGYSAVER=`$PLISTBUDDY -c 'Print :rights:system.preferences.energysaver:group' $AUTHFILE`
  33. if [ ! "${ENERGYSAVER}" = "everyone" ]; then
  34.     exit 0
  35. fi
  36.  
  37. SYSPREFS=`$PLISTBUDDY -c 'Print :rights:system.preferences:group' $AUTHFILE`
  38. if [ ! "${SYSPREFS}" = "everyone" ]; then
  39.     exit 0
  40. fi
  41.  
  42. PRINTING=`$PLISTBUDDY -c 'Print :rights:system.preferences.printing:group' $AUTHFILE`
  43. if [ ! "${PRINTING}" = "everyone" ]; then
  44.     exit 0
  45. fi
  46.  
  47. # lpadmin group membership
  48. EVERYONE=`dsmemberutil getuuid -G everyone`
  49. ! dscl /Local/Default -read Groups/_lpadmin NestedGroups | grep "$EVERYONE"
  50.  
  51. TIMEMACHINE=`$PLISTBUDDY -c 'Print :rights:system.preferences.timemachine:group' $AUTHFILE`
  52. if [ ! "${TIMEMACHINE}" = "everyone" ]; then
  53.     exit 0
  54. fi
  55.  
  56. echo "FYI exit -1"
  57. exit -1
  58.  
  59. #any faster?
  60. #ARRAY_TO_CHECK=()
  61.  
  62. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:com.apple.SoftwareUpdate.scan:rule' $AUTHFILE`
  63. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.install.apple-software:rule' $AUTHFILE`
  64. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.preferences.datetime:group' $AUTHFILE`
  65. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.preferences.energysaver:group' $AUTHFILE`
  66. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.preferences:group' $AUTHFILE`
  67. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.preferences.printing:group' $AUTHFILE`
  68. #ARRAY_TO_CHECK+=`$PLISTBUDDY -c 'Print :rights:system.preferences.timemachine:group' $AUTHFILE`
  69.  
  70. #for value in ${ARRAY_TO_CHECK[*]} ; do
  71. #   if [ ! $value = "allow" ] ; then
  72. #       exit 0
  73. #   fi
  74. #done
Advertisement
Add Comment
Please, Sign In to add comment