Dez 14

Mit einem Mac hat man ein ausgewachsenes Unix-Betriebssystem auf dem Schreibtisch. Das Schöne am Mac OS ist jedoch, dass man davon nichts mitbekommt. Es sei denn, man will. Gerade wenn man eine Linux-Vergangenheit hat, dann kann die Terminal.app (eine Unix-Konsole mit Kommandozeile) eine der Standardanwendungen sein.

Mac OS kommt mit einer Vielzahl vertrauter Unix-Befehle und Programmpakete. So sind Standardkommandos ebenso vorinstalliert wie verschiedene Shells, der Apache-Webserver und die Programmiersprachen Perl, Python, PHP und Ruby.

Viele weitere Unix-Software kann leicht nachinstalliert werden. Dabei stehen sogenannte Paketmanager zur Verfügung, darunter:

Continue reading »

Jan 02

Bei meinen Perl-Projekten habe ich einen seltsamen Effekt entdeckt: seit ich auf dem Mac entwickle, schlichen sich in die tar-Archive Dateien ein, die den Namen einer anderen Datei tragen, lediglich mit einem vorangestellten “._”.

Jetzt habe ich das Phänomen genauer untersucht und sowohl Erklärung als auch Lösung gefunden: beim Kopieren von Dateien über Dateisystemgrenzen legt Mac OS diese Spezialdateien an, um Dateisystem-Attribute zu erhalten. Genau ist dies in der Apple-Knowledgebase erklärt.

Um dieses Verhalten beim Bau meiner Perl-Module zu verhindern, kann ich eine Shell-Variable setzen. Wie diese heißt, hängt von der Betriebssystem-Version ab:

  • Tiger: export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
  • Leopard: export COPYFILE_DISABLE=true

Um sie dauerhaft zu setzen, müssen die Shell-Kommandos in die versteckte Datei .bash_profile eingetragen werden.