• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Vor/Nach Ausführen eines Programmes "launchctl load/unload ..."

Sailing Mac

Bismarckapfel
Registriert
20.10.09
Beiträge
142
Hallo,

ich nutze für mein Uni-VPN den Junos Pulse Client (5.0.7). Dieser lädt beim Log-in in Mac OS X und lässt sich nicht über die Login-Items deaktivieren, sondern nur über launchctl (soweit ich weiß).
Nervigerweise zeigt er beim Start auch noch für einige Zeit ein nicht-schließbares Fenster mitten auf dem Desktop. (Erinnert mich ganz an früher, als unter Windows der Desktop eine Minute unbrauchbar war, weil 100 Dinge gestartet haben.)

Da ich den Client eigentlich nur gelegentlich nutze, will ich den entsprechenden Prozess nicht immer laufen haben, sonder nur bei Bedarf laden. Danach will ich den Prozess natürlich auch wieder unloaden.
Daher habe ich versucht, dass Problem durch folgenden AppleScript zu beheben, indem ich Junos Pulse über das Script starte und warte bis es terminiert:
Code:
do shell script "launchctl load -w /Library/LaunchAgents/net.juniper.pulsetray.plist"
set appname to "Applications/Junos Pulse.app"
tell application appname to launch
repeat until application appname is not running
    delay 1
end repeat
do shell script "launchctl unload -w /Library/LaunchAgents/net.juniper.pulsetray.plist"


Das funktioniert auch was das Starten von Service und Programm angeht. Der Script wartet auch bis das Programm terminiert ist (so lange wird er ausgeführt).
Der Prozess wird sogar beendet (mit "launchctl list" im Terminal nicht zu finden), allerdings wird er trotzdem wie bisher beim nächsten Login neu gestartet.

Führe ich "launchctl unload ..." hingegen manuell im Terminal aus, funktioniert alles wie es soll und der Prozess ist auf Eis gelegt.

Vielen Dank schonmal für eure Hilfe!
 

Pill

Adams Parmäne
Registriert
07.07.12
Beiträge
1.310
Die Plist zu löschen reicht nicht?
 

Sailing Mac

Bismarckapfel
Registriert
20.10.09
Beiträge
142
Ich habs nicht probiert, aber das dürfte die Funktionalität des Programmes einschränken.
Wenn ich sie vorher nicht lade, kann der Client keine Verbindung herstellen, das weiß ich.
 

martinv2

Doppelter Prinzenapfel
Registriert
14.04.12
Beiträge
437
Wenn Du die plist aus /Library/LauchAgents "befreist" und woanders hinverschiebst, wird sie beim Login nicht mehr gestartet. Dein Skript musst Du natürlich entsprechend anpassen.
 

Pill

Adams Parmäne
Registriert
07.07.12
Beiträge
1.310
Lösche die plist und starte statt Junos Pulse direkt den PulseTray Dienst in
/Applications/Junos\ Pulse.app/Contents/Plugins/JamUI/PulseTray.app. Du kannst dir auch eine Verknüpfung anlegen.
 
  • Like
Reaktionen: Sailing Mac

Sailing Mac

Bismarckapfel
Registriert
20.10.09
Beiträge
142
Vielen Dank für eure Hilfe!

@Pill: Deine Antwort hat das Problem bestens gelöst, mit einem Alias direkt auf die Tray app brauch ich nicht mal mehr einen Skript. (Die PulseTray.app startet auch einen Mini-Client, der in der Menüleiste funktioniert.