MacOS Mojave Dynamic Wallpaper selber nutzen

Bildschirmfoto 2018-06-13 um 17.47.01.jpg

Nach der WWDC werden gerne Neuerungen ausgegraben und für die ungeduldigen portiert. Auf Redmond Pie erfuhr ich davon, dass das nächste MacOS Betriebssystem einen dynamischen Schreibtischhintergrund haben wird. Da wird also die gezeigte Szene angepasst an den Ort und die Zeit des Nutzers verändert. Im Grunde handelt es sich um 16 Bilder (Reddit-Link zum Downloaden), die der Reihe nach angezeigt werden und so lässt sich der Effekt auch auf älteren MacOS Betriebssystemen nachmachen.

Die Lösung von Redmond Pie war mir dann aber doch zu blöd und nach ein bisschen Googeln fand ich das Skript von jemanden, dass das ganze automatisiert und sehr nah an die Mojave Version kommt (Quelle). Allerdings hat die Anleitung auch in der neusten Version einen Fehler, daher folgt hier meine angepasste Anleitung:

Bildschirmfoto 2018-06-13 um 12.43.57.jpg
  1. Als Erstes muss man sich alle benötigten Dateien vom GitHub-Repository des Autors herunterladen: Dynamic_Walls von kush-agra. Das ist einmal sein Programm (über den großen, grünen Button rechts -> "Download ZIP") und die Bilder über den Link im 1. "Set Up" Punkt.
  2. Als Nächstes legt man fest, in welchen Ordner die Dateien abgelegt werden sollen. Es ist ratsam den vorgeschlagenen Ordner (/Benutzer/<Benutzername>/Bilder/Wallpapers) zu nehmen, da man sonst viele Pfade in den Skripten anpassen muss (steht unten).
  3. Nun kopiert man die Dateien in den Ordner, damit die Struktur nachher auch so aussieht, wie es im Set Up steht. (Oder im alternativen Pfad)
  4. Danach öffnet man die Datei Dynamic_Walls.scpt, klickt auf Ausführen und erlaubt den Zugriff auf den Standort
  5. Als Nächstes muss man doppelt auf die Datei klicken, um sie auszuführen: Dynamic_Walls_plistGenerator.command Dies generiert den Autostarter
  6. Das Problem: In meinen Augen (N00b) ist das Launcher Skript fehlerhaft und führt dazu, dass in der Menüleiste ständig der Pfeil für die Ortungsdienste zu sehen ist. Daher meine abgeänderte Version:
  7. Im Pfad /Users/felix/Library/LaunchAgents ändert man die Datei Dynamic_walls.Scheduler.plist mit dem Texteditor wie folgt um:
  8. <?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>Dynamic_walls.Scheduler</string>
            <key>Program</key>
                <string>/usr/bin/osascript</string>
                <key>ProgramArguments</key>
                <array>
                        <string>osascript</string>
                <string>/Users/felix/Pictures/Wallpapers/Dynamic_Walls.scpt</string>
            </array>
            <key>RunAtLoad</key>
            <true/>
            <key>Nice</key>
            <integer>1</integer>
            <key>StartInterval</key>
            <integer>900</integer>
        </dict>
    </plist>
 

Dies sorgt dafür, dass das Skript alle 15 Minuten ausgeführt wird (900 Sekunden) und daher auch nur in diesem Rhythmus der Ortungspfeil zu sehen ist.

Fertig

Bildschirmfoto 2018-06-13 um 23.47.56.jpg

 

Wer einen anderen Pfad haben will, muss folgende Dateien die Pfade anpassen:

  1. In der Datei Dynamic_Walls.scpt die Pfade zu getSunrise.sh, getSunset.sh und ganz unten "Pictures:Wallpapers:mojave_dynamic:" zum neuen Pfad
  2. Jeweils in der Datei getSunrise.sh und getSunset.sh nach curl -s $( zu der Datei LocateMe
  3. In dem oben genannten LaunchAgent Skript.

P.s.: Alle Dateien lassen sich wunderbar mit TextEdit bearbeiten, und wenn man dazu noch ein neues TextEdit Dokument erstellt, in reinen Text umwandelt (Apfel + Shift + T) kann man in dieses ganz einfach die Dateien ziehen und bekommt den Pfad.