Launch daemons und agents mit git(-hub) verwalten

macerl69

Mitglied
Thread Starter
Registriert
10.02.2025
Beiträge
24
Reaktionspunkte
2
Ich habe ein paar selbst geschriebene Daemons und Agents, sowohl unter ~/Library/LaunchAgents, /Library/LaunchAgents als auch /Library/LaunchDaemons.
Die möchte ich gerne mit git und GitHub verwalten.

Aktuell behelfe ich mir damit, dass ich meine *.plist Dateien in einen zusätzlichen Ordner (=git repository) kopiere und darin die original Ordnerstruktur nachbilde. Elegant ist das hin und her kopieren natürlich nicht.

Unter Linux würde ich die Originale löschen und durch symbolische Links auf die Versionen im git-repository ersetzen. So sinngemäß:
Bash:
ln -s ~/my-git-folder/root/Library/LaunchDaemons/mein_daemon.plist /Library/LaunchDaemons/mein_daemon.plist

Unter MacOS bin ich nicht sicher, ob das eine gute Idee wäre.

Gibt's hier ein Best Practise?
 
Hi,
Das lässt der Gatekeeper von Apple nicht zu, was mir bekannt ist, kann mich aber auch täuschen.
Franz
 
Wenn du es "sauber" machen willst, schreib ein kleines install script, dass die plist an die richtige Stelle kopiert und ggf. auch gleich lädt und event startet. Wenn du dann noch das Sahnehäubchen machen willst, dann auch ein uninstall script, dass die Jobs stoppt, entlädt und ggf. entfernt.

Dann bist du mit deinem source-Verzeichnis vollkommen unabhängig, kannst es irgendwann vom Mac löschen und wenn du wieder dran arbeiten willst einfach per git clone zurück holen und weiter machen. Und das auf jedem anderen Rechner.
 
So mache ich es. Meinem Arbeitsfluss kommt es aber entgegen, die plists in den originalen Ordnern zu bearbeiten (ich nutze dazu sehr gern LaunchControl. Und dann kopiere ich mir mit einem Script (teil des Repos) die plists ins Repository unter Versionskontrolle. Ein weiteres Script kann auch einem jungfräulichen Mac die plists aus dem (frisch geklonten) Repo an die entsprechenden System-Ordner "deployen". Evtl. stelle ich die Scripts noch auf rsync um.
 
Zurück
Oben Unten