Fastfetch & Terminal

Fastfetch konfigurieren: Mein Cthulhu-Systemüberblick Schritt für Schritt

Dein Systemüberblick bleibt lokal

Diese Konfiguration liest lokale Systemdaten und einen Dateizeitstempel. Downloads brauchen Internet; ergänzte Netzwerkmodule oder eigene Befehle können zusätzliche Verbindungen herstellen.

In diesem Artikel
  1. Was zeigt mein Fastfetch-Screenshot?
  2. Die drei Dateien in meinem Repository
  3. Zuerst eine kleine Testdatei starten
  4. Module, Rahmen und Platzhalter verstehen
  5. Das Bildlogo mit Kitty anzeigen
  6. Root, Games und Homelab passend auswählen
  7. Was bedeutet der eigene Alterszähler?
  8. Wenn Bild, Icons oder eine Zeile fehlen
  9. Lokale Daten bewusst veröffentlichen
  10. Konfiguration und geprüfte Quellen

Ein Terminal kann mehr sein als eine leere Eingabezeile. Mit Fastfetch bekomme ich auf Cthulhu einen kompakten Überblick über System, Hardware, Speicher und Laufwerke. Mein Aufbau verbindet ein eigenes Bildlogo mit einer gerahmten Liste und liegt offen im Cthulhu-Repository.

Hier zeige ich den echten Screenshot, erkläre die einzelnen Teile der Konfiguration und beginne für Einsteiger mit einer kleinen Testdatei. Du kannst die Gestaltung übernehmen und die Angaben an deinen Rechner anpassen. Für die darunterliegende NixOS-Konfiguration gibt es den NixOS-Einstieg.

Cthulhu-Desktop mit Fastfetch in Kitty: eigenes Bildlogo, türkisfarbener Rahmen sowie NixOS-, Hardware-, Speicher- und Laufwerksdaten.
Mein Cthulhu-Desktop am 7. Oktober 2026: Fastfetch in Kitty unter NixOS und KWin/Wayland. Die Werte zeigen den Zustand beim Screenshot. Screenshot in voller Größe öffnen.

Was zeigt mein Fastfetch-Screenshot?

Links steht die Bilddatei, rechts der Systemüberblick. Im Screenshot erkennst du meinen Benutzer nebu, den Rechnernamen cthulhu, Linux 7.2.8, KWin auf Wayland, Kitty und fish. Dazu kommen der Ryzen 7 5800X3D, die Radeon RX 9060 XT, zwei Monitore sowie belegter Speicher und mehrere Laufwerke.

Diese Aufteilung hilft beim schnellen Einordnen eines Rechners und beim Dokumentieren eines Setups. RAM-Belegung, Laufwerksfüllstand und Laufzeit ändern sich. Fastfetch zeigt hier eine Momentaufnahme; für einen reproduzierbaren Leistungstest brauchst du zusätzliche Werkzeuge und Messbedingungen.

Die Zeile I use NixOS btw ist in meinem OS-Modul ausdrücklich als Text gesetzt. Sie ist persönliches Branding. Wer die Datei auf einem anderen System verwendet, sollte diesen Text ändern oder das eigene format entfernen, damit das Modul seine normale Betriebssystemausgabe verwendet.

Die drei Dateien in meinem Repository

DateiAufgabe
config.jsoncReihenfolge der Anzeigen, Beschriftungen, Formate und Logo-Einstellungen
1.pngDie Bilddatei links neben den Systemdaten
cthulhu-bornLeere Markerdatei; ihr Änderungszeitpunkt dient als Bezug für den Alterszähler

Der übliche Konfigurationspfad ist ~/.config/fastfetch/config.jsonc. Ein abweichendes XDG_CONFIG_HOME kann den Standardsuchpfad verändern; mein veröffentlichter Bildpfad und der Altersbefehl zeigen ausdrücklich auf ~/.config/fastfetch. Prüfe diese persönlichen Pfade beim Übernehmen.

JSONC ist JSON mit Kommentaren. Die Beispiele hier sind auch als normales JSON gültig. $schema hilft geeigneten Editoren bei Vorschlägen und Prüfungen. Die verlinkte Entwicklungsfassung kann sich ändern; für die verfügbaren Optionen ist auch deine installierte Fastfetch-Version entscheidend.

Zuerst eine kleine Testdatei starten

Voraussetzung ist ein installiertes Fastfetch. Prüfe die Version:

fastfetch --version

Unter NixOS kannst du fastfetch in deine Paketliste aufnehmen; der NixOS-Artikel erklärt den Weg. Lege für die Übung einen eigenen Ordner an:

mkdir -p ~/fastfetch-tutorial

Speichere die folgende vollständige Datei mit deinem Editor als ~/fastfetch-tutorial/config.jsonc. Falls dort schon eigene Dateien liegen, wähle einen anderen Übungsordner. Der Einstieg benutzt ein eingebautes Textlogo und kommt ohne Bilddarstellung oder Nerd-Font-Icons aus:

{
  "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
  "logo": {
    "type": "builtin",
    "source": "nixos"
  },
  "display": {
    "separator": " ",
    "color": {
      "keys": "cyan"
    }
  },
  "modules": [
    {
      "type": "custom",
      "key": "╭───────────╮",
      "format": ""
    },
    {
      "type": "title",
      "key": "│ user      │",
      "format": "{user-name}"
    },
    {
      "type": "os",
      "key": "│ distro    │"
    },
    {
      "type": "kernel",
      "key": "│ kernel    │"
    },
    {
      "type": "memory",
      "key": "│ memory    │"
    },
    {
      "type": "custom",
      "key": "╰───────────╯",
      "format": ""
    }
  ]
}

Starte ausdrücklich diese Datei:

fastfetch --config ~/fastfetch-tutorial/config.jsonc

Du solltest ein NixOS-Textlogo und die vier gerahmten Datenzeilen sehen. Das gewählte Logo ist Gestaltung und sagt auf einem anderen Linux-System nichts über die erkannte Distribution aus. Fastfetch beendet sich nach der Ausgabe; es entsteht kein dauerhaft laufendes Dashboard. Deine reguläre Konfiguration wird durch diesen Test nicht ersetzt.

Module, Rahmen und Platzhalter verstehen

Die Einträge in modules werden in ihrer angegebenen Reihenfolge ausgegeben. type wählt die Datenquelle, key gestaltet die linke Beschriftung und format bestimmt die Ausgabe rechts. Meine Rahmenlinien sind custom-Einträge und Unicode-Zeichen; sie lesen selbst keine Hardwaredaten.

BausteinBeispiel aus meinem Aufbau
titleZwei getrennte Zeilen mit {user-name} und {host-name}
uptime, kernel, wmLaufzeit, Kernel und erkannte Fensterverwaltung
terminal, shell, cpuTerminal, Shell und Prozessor
disk, memory, swapDateisystembelegung, RAM und Swap
host, gpu, displayRechner-/Mainboardangaben, Grafikkarte und Monitore
colorsFarbige Kreise aus der Terminalpalette

Die kleinen Symbole in meinem Original benötigen passende Glyphen, typischerweise aus einer Nerd Font. Stelle diese Schrift im Terminal ein. Wenn du nur Kästchen siehst, ersetze die Icons zunächst durch Text. Die Rahmenzeichen bleiben auch im vereinfachten Beispiel erhalten.

Meine Hardwareformate verwenden teils nummerierte Platzhalter: {5} {1} ({2}) beim Host steht in der geprüften Referenz für Hersteller, Produktfamilie und Produktname. Im GPU-Format bezeichnet {12} die Frequenz. Eine leere Stelle hinter dem @ im Screenshot kann schlicht einen nicht verfügbaren Wert bedeuten.

Für verständlichere eigene Formate kannst du benannte Platzhalter verwenden. Prüfe die Liste für deine Version:

fastfetch -h gpu-format

Als kleine Übung ändere in der Testdatei nur "keys": "cyan" zu "keys": "green", speichere und starte sie erneut. Die linken Beschriftungen sollten grün erscheinen. Setze den Wert zum Rückweg wieder auf cyan.

Mein Original verweist auf /home/nebu/.config/fastfetch/1.png und nennt kitty-icat als Bildausgabe. Diese Methode verwendet das zu Kitty gehörende Programm kitten icat. Für diesen Aufbau müssen Kitty-Bilddarstellung und das Programm kitten verfügbar sein.

Im Repository stehen Logo-Optionen wie logoType und logoWidth auf der obersten Ebene. Die am 7. Oktober 2026 geprüfte Dokumentation und das Schema führen diese Einstellungen in einem logo-Objekt. Übernimm für eine aktuelle Konfiguration die dokumentierte Struktur:

{
  "logo": {
    "type": "kitty-icat",
    "source": "/home/nebu/.config/fastfetch/1.png",
    "width": 30,
    "height": 15,
    "padding": {
      "top": 1,
      "left": 2,
      "right": 4
    }
  }
}

Das ist ein Ausschnitt: Er ersetzt den bisherigen logo-Eintrag der Testdatei. Entferne bei einer übernommenen Originaldatei auch die separaten logoType-, logoWidth-, logoHeight- und logoPadding-Einträge. Sonst können unbekannte Optionen gemeldet werden.

Ersetze den Bildpfad durch den absoluten Pfad auf deinem Rechner. width und height reservieren Terminalspalten und -zeilen, keine CSS-Pixel. Die Abstände geben Bild und Datenliste Platz; andere Schriftgrößen und Fenstermaße verändern das Ergebnis.

Die Datei 1.png findest du im Fastfetch-Ordner. Wenn du das Repository lokal ansehen möchtest, klone es:

git clone https://github.com/dennishilk/cthulhu.git

Öffne anschließend cthulhu/Fastfetch/fastfetch/ und lies die Konfiguration, bevor du sie ausführst. Du kannst das Bild oder eine eigene Grafik verwenden. Für ein Textterminal behältst du das eingebaute Logo aus unserem ersten Beispiel.

Root, Games und Homelab passend auswählen

Meine vier disk-Einträge lesen /, /mnt/Games.Vol1, /mnt/Games.Vol2 und /mnt/Homelab. Die Bezeichnungen game1, game2 und lab sind frei gewählte Labels. Mit ihnen bleibt die Übersicht kurz.

{
  "type": "disk",
  "key": "│ ├ game1   │",
  "folders": "/mnt/Games.Vol1"
}

Das ist ein einzelner Eintrag für die modules-Liste; beachte das trennende Komma zwischen Einträgen. Entferne zusätzliche Laufwerksmodule, wenn du diese Mountpoints nicht verwendest, oder trage deine eigenen ein. Fastfetch richtet damit keine Mounts ein.

Prüfe bei einem unerwarteten Wert zuerst, welches Dateisystem tatsächlich unter dem Pfad liegt:

findmnt -T /mnt/Games.Vol1

Auch ein vorhandener Ordner kann auf dem Root-Dateisystem liegen, wenn das erwartete Laufwerk gerade nicht eingebunden ist. Ein Belegungswert allein bestätigt daher nicht den richtigen Mount. Die Festplattenzeilen helfen erst mit passenden Pfaden bei einem verlässlichen Überblick.

Was bedeutet der eigene Alterszähler?

Der Zähler verwendet ein command-Modul. Mein Befehl liest mit stat -c %Y den letzten Änderungszeitpunkt der Datei cthulhu-born, zieht ihn von der aktuellen Unix-Zeit ab und teilt die Differenz durch 86.400. Das Ergebnis sind ganze Tage seit diesem Marker.

Das ist ein eigener Bezugspunkt für Cthulhu, keine automatische Erkennung des Betriebssystem-Installationsdatums. Die leere Datei enthält selbst kein Datum. Beim normalen Klonen des Git-Repositories bekommt sie einen neuen Dateizeitstempel. Für deinen Rechner musst du einen sinnvollen Marker festlegen und seinen Zeitstempel bei Sicherungen erhalten.

Diese Variante zeigt n/a, wenn die Markerdatei fehlt:

{
  "type": "command",
  "key": "│ └ age     │",
  "text": "if [ -f \"$HOME/.config/fastfetch/cthulhu-born\" ]; then start=$(stat -c %Y \"$HOME/.config/fastfetch/cthulhu-born\"); now=$(date +%s); printf '%s days\\n' \"$(((now - start) / 86400))\"; else printf 'n/a\\n'; fi"
}

Sie setzt die unter Linux übliche GNU-stat-Syntax voraus. Unix-artige Systeme mit anderen stat-Optionen brauchen eine Anpassung. Du kannst den Zähler auch vollständig weglassen.

Der Name command ist wörtlich gemeint: Fastfetch führt den enthaltenen Befehl mit deinen Benutzerrechten aus. Mein Beispiel liest nur Datei- und Zeitdaten. Prüfe bei fremden Konfigurationen die Befehle, bevor du die Datei startest.

Wenn Bild, Icons oder eine Zeile fehlen

  • Unbekannte JSON-Option: Vergleiche die gemeldete Stelle mit deiner Fastfetch-Version und der dokumentierten Struktur; besonders die Logo-Einstellungen müssen zusammenpassen.
  • Kein Bild: Prüfe den absoluten Dateipfad, das Terminal und die Verfügbarkeit von kitten. Teste zunächst ohne tmux.
  • Kästchen statt Icons: Wähle im Terminal eine passende Nerd Font oder verwende einfache Textlabels.
  • Unpassende Laufwerkswerte: Kontrolliere Mountpoints und das darunterliegende Dateisystem.
  • Leere GPU-Frequenz: Prüfe die unterstützten Formatfelder und die Verfügbarkeit des Werts; eine fehlende Anzeige allein ist kein Defektnachweis.
  • Unerwartetes Alter: Prüfe den Änderungszeitpunkt der Markerdatei, insbesondere nach einem Clone oder einer Wiederherstellung.

Lass Fastfetch Fehler zur Testdatei anzeigen:

fastfetch --config ~/fastfetch-tutorial/config.jsonc --show-errors

Falls die Bilddarstellung weiterhin stört, setze den logo-Block auf das eingebaute Textlogo aus dem ersten Beispiel zurück. Bevor du später deine reguläre Konfiguration ersetzt, sichere sie nach den Schritten im Backup-Artikel. Das Schließen des Terminals und das Beibehalten deiner ursprünglichen Datei reichen als Rückweg für diese Übung.

Lokale Daten bewusst veröffentlichen

Die hier gezeigten Standardmodule lesen lokale Angaben. Der Altersbefehl verwendet ebenfalls nur lokale Datei- und Zeitinformationen. Für diesen Systemüberblick ist kein Fastfetch-Konto nötig. Der Git-Download und die Installation von Paketen benötigen dagegen Netzwerkzugriff.

Ein geteilter Screenshot kann Benutzer- und Rechnernamen, Hardware, Kernel, Laufwerke und deren Belegung sichtbar machen. Wähle daher vor einer Veröffentlichung die Module bewusst aus. Meine Datei enthält keine Public-IP- oder Wetterabfrage; spätere Ergänzungen können externe Dienste kontaktieren. Auch frei wählbare command-Module können mehr tun als Daten auslesen.

Mit einer eigenen Testdatei lernst du zuerst Darstellung und Datenquellen kennen. Danach kannst du die benötigten Module in deine reguläre Konfiguration übernehmen und diese zusammen mit dem Bild und gegebenenfalls dem Marker sichern.

Konfiguration und geprüfte Quellen

Meine Dateien und die offiziellen Referenzen wurden am 7. Oktober 2026 geprüft. Der Screenshot dokumentiert meinen tatsächlichen Desktop; die kleine Testdatei ist ein eigenes Lernbeispiel.