Neben pkg, über welches ich ja schon oft genug geschrieben habe, wird mein {Leben,home directory} im wesentlichen noch durch die zsh-Skripte sysmaint und unisync (beide auf der homepage verlinkt) irgendwie organisiert. "Benutzt" wird dabei hauptsächlich sysmaint — es hat Einträge für pkg, unisync und noch einige andere Sachen (wie apt-get update, upgrade etc) und führt diese ab und an aus.
unisync hat einen ähnlichen Zweck wie pkg, benutzt dazu aber keine Repositories, sondern unison. Auf die Weise arbeitet es einfach im Hintergrund, ohne dass man sich um so etwas wie commits kümmern muss, und nebenbei kann man durch den fehlenden Repository-Overhead auch problemlos z.B. die Musiksammlung damit synchron halten.
Auch gibt es keine globale "Paketliste", sondern jeder Host hat eine eigene Liste an Verzeichnissen und dazugehörigen Hosts, was das ganze obendrein noch etwas dezentraler macht.
Die aktuelle Struktur von /home/derf sieht ungefähr so aus:
- bin — executables, im Pfad, von pkg erstellte symlinks auf ~/packages/...
- lib — "Library", permanent gespeicherte Dateien (z.B. Musik, E-Books, Bilder), teilweise mit unisync synchronisiert
- packages — Paketsystem, siehe die Einträge zu pkg und pkg(7)
- stuff — Diverses, via unisync auf fast allen Hosts aktuell
- var — Ebenfalls diverses, aber größtenteils Host-spezifisch (ohne unisync). Enthält u.a. Unterverzeichnisse für gtd, fremde Repositories (die mit sysmaint täglich aktualisiert werden), logfiles und "incoming"
Auf manchen PCs gibt's natürlich noch andere Verzeichnisse, die dann aber auch Host-spezifisch sind. Das home selbst ist also ziemlich aufgeräumt, die Müllhalde wurde erfolgreich nach ~/var und ~/var/tmp verlagert.
Falls sich jemand nach dem Zweck der Sache fragt:
Es macht das Leben einfach leichter. Ich tippe einfach ab und an 'sysmaint' in
meinen Prompt, und muss mir keine Gedanken mehr darum machen, noch schnell
$datei auf $host zu laden. Die relativ feste Strukter erleichtert das Skripten
dabei auch erheblich, und gibt nebenbei noch den Eindruck von Organisation,
was u.U. recht motivierend sein kann ;)
Und es ist natürlich ein guter und interessanter Zeitvertreib, solche Skripte zu schreiben und zu testen.