Geekzeug

fastfetch: System-Infos hübsch, schnell und anpassbar

Das eigene Info-Center im Terminal - für Windows, Linux, Android, FreeBSD und MacOS

Manche Dinge möchte man doch immer wieder mal fix wissen: Die exakte Version des Betriebssystems, den Namen der GPU, die externe IP-Adresse und natürlich - warum auch immer, es gibt ja Fenster ... - das aktuelle Wetter. Und wenn das alles im Terminal zu sehen sein soll und das auch noch hübsch und einfach, dann läuft es fix auf fastfetch hinaus. Ein fantastisches Tool, nur leider ziemlich dünn dokumentiert. Aber gut, dann lohnt sich das hier wenigstens ;)

fastfetch

fastfetch ist in letzter Zeit häufig in den Medien, weil das Vorbild Neofetch quasi stillgelegt wurde. Das Kommandozeilen-Tool unterstützt die relevanten Betriebssysteme und lässt sich wunderbar anpassen, nur so richtig einsteigerfreundlich ist es nicht. Nicht, weil es sonderlich kompliziert wäre, sondern weil die Dokumentation sehr dünn ist und auch erfahrene Nutzer viele Dinge durch Trial and Error herausfinden müssen.

fastfetch kann allerlei Informationen besorgen und nett formatieren, beispielsweise die Auslastung des Arbeitsspeichers, welche Bluetooth-Geräte aktuell verbunden sind, welche Shell in welchem Terminal läuft, in welchem WLAN Ihr seid oder wie das Wetter auf der anderen Seite des Fensters ist. Die Ausgabe lässt sich ziemlich gut formatieren, einfärben und sogar mit schicken Logos versehen.

Was wie angezeigt wird, legt Ihr über JSON-Dateien fest, also relativ schlichte, gut lesbare Textdateien. Nun, schlicht und gut lesbar für Techies ..., aber Ihr seht unten konkrete Beispiele, schwierig ist das nicht. Das Gute daran: fastfetch lässt sich für unterschiedlichste Szenarien einsetzen. Egal, ob Ihr ein paar fixe Infos bei jeder neuen Terminal-Session benötigt, ein komplettes Info-Center oder einfach nur die aktuelle externe IP wissen wollt, fastfetch ist eine gute Lösung.

fastfetch mit tutonaut-konfiguration.
So könnte es aussehen - samt Tuto-ASCII-Logo ;)

Installation und Nutzung

Die Installation läuft unter Linux-Distributionen einfach über die regulären Paketmanager, unter MacOS über Homebrew - wie genau, steht auch in der Doku. Unter Windows läuft es über scoop - was wohl die Wenigsten laufen haben dürften.

Zunächst muss also scoop eingerichtet werden, ein Tool zum Installieren von Programmen - mit jeder Menge guten Funktionen, die hier aber nicht Thema sind. Öffnet dafür eine Powershell und gebt folgende Befehle ein:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression

Die erste Zeile konfiguriert die Powershell so, dass Ihr das Skript ausführen könnt. Die zweite Zeile lädt das angegebene Skript herunter und führt es anschließend aus. Danach steht Euch scoop zur Verfügung, natürlich auch in anderen Shells - hier läuft es zum Beispiel in der Windows-Bash (bekommt man über Git for Windows).

Die Installation von fastfetch ist dann trivial:

scoop install fastfetch

Das Schöne daran: Ihr braucht keine Admin-Rechte und scoop installiert alles innerhalb des eigenen Basisverzeichnisses.

fastfetch ist sofort einsatzbereit:

fastfetch

führt das Tool mit der Standardkonfiguration aus - was recht ausführliche Infos und ein dem System entsprechendes Logo ausgibt, hier im Bild:

standard-fastfetch-aausgabe.
Die Standardausgabe von fastfetch unter Windows

Wenn nur eine einzelne Information gewünscht ist, funzt fastfetch natürlich auch über die Kommandozeile. Wollt Ihr zum Beispiel nur die Info zum Betriebssystem:

fastfetch -s os

Es gibt reichlich Optionen, ruft einfach mal die Hilfe auf.

Eigene Konfiguration nutzen

Viel interessanter wird es mit einer eigenen Konfiguration. Und da gibt es allein für den Aufruf der Konfiguration schon mehrere Möglichkeiten. Grundsätzlich lautet der Aufruf

fastfetch -c ./meine-konfigurationen/myconfig.jsonc

Ihr könnt eine Standardkonfiguration über

fastfetch --gen-config ~/fastfetch/myconfig.jsonc

oder ähnlich erzeugen und dann damit arbeiten, dann stimmt die Basis-Syntax schon mal. fastfetch durchsucht einige Verzeichnisse standardmäßig - liegt darin eine Konfiguration, wird diese genutzt, auch wenn nicht direkt angegeben. Die Verzeichnisse lassen sich ausgeben:

fastfetch --list-data-paths

Unter Windows bietet sich C:\Users\%USERNAME%\fastfetch an.

In der Konfiguration habt Ihr im Wesentlichen zwei Möglichkeiten, mit Modulen zu arbeiten - die Ihr natürlich auch auflisten könnt:

fastfetch --list-modules

Wenn Ihr ein Modul so wie vorgegeben nutzen wollt, genügt ein simpler Eintrag:

...
"gpu",
...

würde Informationen GPU/Grafikkarte ausspucken, im Standardformat:

GPU: NVIDIA GeForce

Wollt Ihr da aber etwa lieber "Grafikkarte:" stehen haben, müsst Ihr das GPU-Modul so aufrufen:

...
{
    "type": "gpu",
    "key": "Grafikkarte"
},
...

Über type wird immer das Modul angegeben und key ist immer der vorangestellte Name. Welche Optionen es für welche Module gibt, erfahrt Ihr im JSON-Schema von fastfetch - eine sehr ausführliche Datei auf GitHub.

Die Modulkonfiguration könnte zum Beispiel so aussehen:

"modules": [
    {
        "cpu",
        {
            "type": "gpu",
            "key": "Grafikkarte"
        },
    }
]

Hier wären es also die beiden Module cpu mit Standardkonfiguration und gpu mit der expliziten Konfiguration.

Neben der Modulkonfiguration gibt es auch noch Einstellungen für die allgemeine Darstellung und das Logo. Hier mal ein Auszug aus unserer Tutonaut-Konfiguration, die auch für die Screenshots herhalten musste:

{
  "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
  "display": {
      "stat": true,
      "showErrors": true,
      "keyWidth": 30
  },
  "logo": {
    "source": "tutologo.txt"
  },
  "modules": [
   {
        "type": "custom",
        "key": "Was ist das hier?",
        "format": "fastfetch mit Tutonaut-Config \n"
    },
    "separator",
    {
        "type": "custom",
        "key": "Basisinformationen",
        "format": "",
        "keyColor": "red"
    },
    {
        "type": "users",
        "key": "Nutzer"
    },
...
   "terminal", 
    "shell",
    "separator",
    {
        "type": "custom",
        "key": "Statusinformationen",
        "keyColor": "red"
    },
...
    {
        "type": "brightness"
    }

  ]
}

Interessant hier:

  • $schema: Link auf das JSON-Schema auf GitHub
  • logo: Pfad zur Logo-Textdatei, relativ zur Konfigurationsdatei
  • display: "stat: true" gibt die Ausführungszeit jedes Moduls aus
  • display: "keyWidth: 30" setzt alle Modul-Keys auf eine Länge von 30 Zeichen
  • custom: Das custom-Modul kann über die Eigenschaft "format" beliebige Texte ausgeben

Das Logo selbst ist einfach nur ein wenig ASCII-Art, erstellt mit irgendeinem Online-Generator:

 _____ _   _ _____ ___    
|_   _| | | |_   _/ _ \   
  | | | | | | | || | | |  
  | | | |_| | | || |_| |  
 _|_|_ \___/  |_| \___/__ 
| \ | |  / \ | | | |_   _|
|  \| | / _ \| | | | | |  
| |\  |/ ___ \ |_| | | |  
|_| \_/_/   \_\___/  |_|  

Nun, möglicherweise sieht das hier in Wordpress nur aus wie Kraut und Rüben ...

Tipps

Wenn Ihr eine eigene Konfiguration habt, samt Logo, und dann vielleicht doch mal nur die Kommandozeile für einen einzelnen Wert bemühen wollt, blendet das Logo (-l) aus:

fastfetch -s gpu -l none

Auch lässt sich fastfetch jederzeit ohne persönliche Konfiguration ausführen:

fastfetch -c none

Und freilich bietet sich Fastfetch an, um eine Begrüßung für Terminal-Sessions zu bauen und über die ~/.bashrc ausführen zu lassen:

fastfetch -c ~/fastfetch/mygreeting.jsonc

Hier bieten sich vor allem aktuelle Infos an, auf Laptops zum Beispiel das WLAN. Jede neue Terminal-Session könnte dann zum Beispiel so beginnen:

minimales fastfetch.
Fastfetch-Ausgabe als Session-Begrüßung

Übrigens: Auf Debian-esken Systemen könnt Ihr es auch mal so versuchen, um an ein paar Infos zu kommen - kann weniger, muss aber nicht installiert werden:

curl cli.help | sh

Mehr zu cli.help.

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help und VoltAmpereWatt.de. Neu: Mastodon

Ein Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Schaltfläche "Zurück zum Anfang"