• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

Finder-Icon ändert sich "von selbst"

quiddjes

Kloppenheimer Streifling
Registriert
08.10.09
Beiträge
4.214
Moin,

gegeben sei eine Numbers-Datei in einem iCloud-Verzeichnis, auf die eine Verknüpfung zeigt, die auf meinem Schreibtisch liegt. Die Datei ist freigegeben an eine andere iCloud-Userin. Aus Gründen möchte ich, dass Datei und Verknüpfung ein bestimmtes Icon zeigt. Also mache ich ⌘I und ziehe die Bilddatei auf das Icon im Dialog. Funktioniert gut, das Icon auf dem Desktop ändert sich.

Zwei Tage später, manchmal auch drei Stunden später, das ist absolut nicht reproduzierbar, kriegt das Icon wieder das Numbers-Symbol.

Woran liegt das und wie kann ich das verhindern?
 
iCloud synchronisiert keine eigenen Icons. Die werden in einem erweiterten Attribut com.apple.ResourceFork in der Datei gespeichert und das Attribut wird nicht via iCloud übertragen.

Kannst du leicht testen:
  1. Datei in einem iCloud Ordner erzeugen
  2. Eigenes Icon definieren
  3. Im Terminal xattr -l DeineDatei.numbers. Da wirst Du sehen, das die Datei das com.apple.ResourceFork Attribut bekommen hat.
  4. Warten, bis iCloud die Datei auf ein anderes System gesynct hat
  5. Datei auf dem anderen System bearbeiten
  6. Auf dem ursprünglichen System wieder auf den Sync warten. Das eigene Icon wird weg sein und xattr -l DeineDatei.numbers wird Dir zeigen, das das Attribut wieder weg ist.
 
Das hieße ja, dass durch den Sync das Icon nicht überschrieben würde. Es verschwindet aber und wird durch das Standard-Icon ersetzt. OK, vielleicht ist iCloud nicht der Grund, aber irgendwas muss der Grund sein.

Oder ich verstehe dich falsch dahingehend, dass die Datei lokal immer mit der iCloud-Version überschrieben wird und dabei das Icon verloren geht. Warum aber geht es dann in meiner Verknüpfung verloren, die NICHT über iCloud synchronisiert wird? Die gibt es nur lokal auf meinem Schreibtisch. Und der weise ich ja das icon separat zu.
 
Der „Resource Fork“ überlebt den iCloud Sync nicht. Das ist im Grunde ein Teil der Datei. Und wenn die woanders geändert wurde und diese Version dann via iCloud-Sync wieder auf deinem Rechner landet, ist der Teil mit dem Custom-Icon weg. Kann man sich, wie ich oben beschrieben habe, via xattr -l schön ansehen. Das Verhalten ist bekannt, und z.B. auch hier gut beschrieben:

Was die Verknüpfung angeht, kann ich das Verhalten nicht reproduzieren. Kurzer Test ergab hier Folgendes. Erzeuge ich einen Alias auf dem Desktop, hat der nicht das Custom-Icon der Datei und xattr -l zeigt auch an, das da kein resource fork attribut an der Alias Datei ist. Die Datei selber hat das custom Icon. Setze ich auf der Alias-Datei auf dem Desktop auch das Custom-Icon, ändere danach die Datei auf einem anderen Gerät und warte den Sync ab, ist das custom Icon weg, aber nur auf der Datei selbst, nicht auf dem Alias.

Allerdings sind Aliase auf iCloud-Dateien eh mit Vorsicht zu geniessen. Löscht macOS die lokale Datei, z.B. um Platz zu sparen, funktioniert der Alias nicht mehr, d.h. die Datei wird nicht automatisch wieder runtergeladen, wenn man sie über den Alias öffnet.
 
Das ist merkwürdig. Ich kann das Problem hier reproduzieren mit zwei Pages- und einer Numbers-Verknüpfungen. Alle drei zeigen auf Dateien in meinem iCloud-Dokumente-Ordner. Nur die Numbers-Datei ist freigegeben.