As suggested by @eholtam, use launchctl asuser instead of launchctl bsexec on 10.10+ in app_usage pkg pre- and postinstall scripts.

This commit is contained in:
Greg Neagle
2018-04-09 08:25:05 -07:00
parent 62dd7700fd
commit 8532574aa9
2 changed files with 13 additions and 2 deletions

View File

@@ -5,6 +5,7 @@
export PATH=/usr/bin:/bin:/usr/sbin:/sbin
# Execute postinstall actions if we're installing on a live system.
# This is useful for loading launch daemons and agents.
if [ "$3" == "/" ]; then
@@ -13,10 +14,15 @@ if [ "$3" == "/" ]; then
launchctl load /Library/LaunchDaemons/com.googlecode.munki.appusaged.plist
# Run postinstall actions for all logged in users.
os_major_version=$(sw_vers -productVersion | cut -d. -f2)
for pid_uid in $(ps -axo pid,uid,args | grep -i "[l]oginwindow.app" | awk '{print $1 "," $2}'); do
pid=$(echo $pid_uid | cut -d, -f1)
uid=$(echo $pid_uid | cut -d, -f2)
launchctl bsexec "$pid" chroot -u "$uid" / launchctl load /Library/LaunchAgents/com.googlecode.munki.app_usage_monitor.plist
if [[ $os_major_version -lt 10 ]] ; then
launchctl bsexec "$pid" chroot -u "$uid" / launchctl load /Library/LaunchAgents/com.googlecode.munki.app_usage_monitor.plist
else
launchctl asuser "$uid" launchctl load /Library/LaunchAgents/com.googlecode.munki.app_usage_monitor.plist
fi
done
fi