Tengo el siguiente agente de inicio que se ejecuta en OS X y ejecuta el siguiente script para eliminar una aplicación cuando un usuario descarga una actualización del sistema operativo desde la tienda de aplicaciones. A continuación, muestra un mensaje a un usuario después de que se elimina.
#!/bin/bash
Version=$(sw_vers | grep ProductVersion | tail -c 7 | cut -d . -f 2)
if [[ $Version -ge 11 ]]
then
launchctl unload /Library/LaunchAgents/net.company_name.blocksierra.plist
rm -f /Library/LaunchAgents/net.company_name.blocksierra.plist
rm -f /usr/local/bin/blocksierra.sh
exit 0
else
rm -rf /Applications/Install\ macOS\ Sierra\ Public\ Beta.app/
osascript -e 'display dialog "macOS sierra is not allowed on computers at this time." with title "Technology Notice" buttons {"OK"} default button "OK" giving up after 30'
fi
Ahora lo voy a empaquetar y luego implementarlo en todas nuestras máquinas Mac. Mi pregunta es: ¿qué agrego al script para que el paquete "cargue" automáticamente el agente de inicio una vez que el paquete esté instalado?
En otras palabras, ¿cómo incorporo este comando?
sudo launchctl load /Library/LaunchAgents/net.company_name.blocksierra.plist
Aquí está el plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com /DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>net.company_name.blocksierra</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/blocksierra.sh</string>
</array>
<key>KeepAlive</key>
<dict>
<key>PathState</key>
<dict>
<key>/Applications/Install macOS Sierra Public Beta.app/</key>
<true/>
</dict>
</dict>
<key>OnDemand</key>
<true/>
</dict>
</plist>