Was ist Television?
Television — der Befehl heißt tv — ist ein Fuzzy-Finder rund um Kanäle. Ein Kanal ist eine benannte Datenquelle mit eigenem Vorschaubefehl, eigenen Tasten und Aktionen: Dateien, Text in Dateien, Verzeichnisse, git-Repositories, Umgebungsvariablen, Prozesse, Docker-Container — oder alles andere, was sich in ein paar Zeilen TOML beschreiben lässt. Es sucht beim Tippen, zeigt eine Vorschau des Treffers und reicht das Ergebnis an die Shell, einen Editor oder deinen eigenen Befehl weiter.
tv update-channels holt die neuesten Kanal-Prototypen von upstream — die ein passendes Binary erwarten. Weder Debian noch Ubuntu paketieren es, ein aktueller Build ist hier also keine Kür, sondern die einzige Möglichkeit überhaupt.
⚡ Hauptfunktionen von Television
🔎 Kanäle statt nur Dateien
Dateien, Text, Verzeichnisse, git-Repositories, Umgebungsvariablen, Prozesse und Container sind alle Kanäle — tv list-channels zeigt, was dieser Build mitbringt.
👁️ Vorschau eingebaut
Jeder Kanal kann einen Vorschaubefehl definieren: Datei, Log, Diff oder Container-Details stehen direkt neben der Trefferliste.
🧵 Hackbar in TOML
Ein Kanal ist eine kleine TOML-Datei mit Quellbefehl, Vorschau, Tasten und Aktionen — ein neuer Workflow ist eine Datei in ~/.config/television/cable/.
⌨️ Shell-Integration
tv init legt smarte Vervollständigung auf Strg+T und die Verlaufssuche auf Strg+R — für bash, zsh und fish.
🚀 Auf Tempo gebaut
Ein asynchroner, paralleler Matcher hält das Tippen auch bei sehr großen Quellen flüssig; Vorschauen werden verzögert berechnet und lassen sich zwischenspeichern.
🧰 Ad-hoc-Modus
--source-command und --preview-command machen aus zwei Shell-Befehlen einen einmaligen Finder, ganz ohne Kanaldatei.
apt upgrade hält dich auf der neuesten Version.
📦 Installation aus deb.griffo.io
Schritt 1: Repository hinzufügen
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 Es gibt einen für immer kostenlosen Spiegel. deb-free.griffo.io liefert Pakete für immer kostenlos — ohne Konto, ohne Abo, höchstens 2 Monate hinter Upstream, Sicherheitsfixes sofort. Derzeit enthält er cliamp, Ghostty, lazydocker, Oh My Posh und Zed; Television ist nicht dabei, deshalb führt heute nur das Repository oben dorthin — auf Anfrage kann es aufgenommen werden.
🧩 Zur extrepo-Option. extrepo ist Debians eigenes Werkzeug für externe Repositories: Es legt die Sources-Datei an und installiert den Signaturschlüssel für dich, nachdem es ihn gegen signierte Metadaten geprüft hat. Dieses Repository ist dort als griffo registriert, der für immer kostenlose Spiegel als griffo-free. Unter Debian (bookworm, trixie, forky und sid) sind die Befehle oben damit die gesamte Einrichtung.
extrepo richtet nur die Sources-Datei und den Schlüssel ein; die Zugangsdaten eines Abos gehören weiterhin in /etc/apt/auth.conf.d/deb.griffo.io.conf. Ubuntu wird nicht abgedeckt, denn extrepo veröffentlicht Metadaten nur für Debian-Suites: dort nimmst du die Befehle mit sudo oder als root.
Schritt 2: Television installieren
# Neuestes Television installieren
sudo apt install television
# Installation überprüfen
tv --version# Neuestes Television installieren
apt install television
# Installation überprüfen
tv --versionSchritt 3: Erster Start und Shell-Integration
# Sehen, welche Kanäle dieser Build mitbringt
tv list-channels
# Die Dateien unter dem aktuellen Verzeichnis durchsuchen
tv files
# Shell-Integration: Strg+T zum Vervollständigen, Strg+R für den Verlauf
echo 'eval "$(tv init bash)"' >> ~/.bashrc
# Handbuchseite und Vervollständigungen für bash, zsh und fish liegen dem Paket bei
man tv🎯 Grundlegende Verwendungsbeispiele
Alltägliches Suchen:
# Der Standardkanal
tv
# Die Kanäle, die du am häufigsten brauchst
tv files
tv text
tv dirs
tv git-repos
# Woanders als im aktuellen Verzeichnis starten
tv files ~/src
# Die neuesten Kanal-Prototypen von upstream holen
tv update-channelsAd-hoc-Kanäle aus beliebigen Befehlen:
# Einen beliebigen Befehl in einen Fuzzy-Finder verwandeln
tv --source-command "fd -t f -H"
# Mit einer Vorschau, gebaut aus dem ausgewählten Eintrag
tv --source-command "git branch --format='%(refname:short)'" \
--preview-command "git log -20 --oneline {}"
# Die Farben behalten, die der Quellbefehl ausgibt
tv --source-command "rg --color=always -n TODO" --ansi
# Die Reihenfolge der Quelle statt der Treffer-Bewertung behalten
tv --source-command "ls -t" --no-sortShell, Vervollständigungen und eigene Kanäle:
# Strg+T und Strg+R in dieser Shell aktivieren
eval "$(tv init zsh)"
# Tab-Vervollständigung für die Unterbefehle von tv
tv completions fish > ~/.config/fish/completions/tv.fish
# Eigene Kanäle liegen im cable-Verzeichnis
mkdir -p ~/.config/television/cable
$EDITOR ~/.config/television/cable/tldr.toml
# Nach einem Upgrade maschinengeschriebene Standardwerte aus der Konfiguration entfernen
tv migrate-config🔧 Tool-Integrationen
Television ist dafür gemacht, mit dem Rest deines Setups verklebt zu werden:
- Deine Shell:
tv init bash,zshoderfishergänzt smarte Vervollständigung und Verlaufssuche, und jeder Kanal kann direkt in die Kommandozeile schreiben - Editoren: für Neovim, Vim, VS Code, JetBrains-IDEs und Zed gibt es Integrationen, die alle dasselbe Binary ansteuern
- ripgrep und Co.: Kanäle sind Shell-Befehle —
rg,fd,git,dockeroder dein eigenes Skript können die Quelle sein - Konfiguration:
~/.config/television/config.tomlfür Standardwerte und Tasten,cable/*.tomlfür die Kanäle selbst - Alles andere: der ausgewählte Eintrag landet auf stdout, also lässt sich
tvmit Pipes, Aliassen und Skripten kombinieren wie jeder andere Befehl
🚀 Warum deb.griffo.io?
- Offizielles Debian: paketiert Television nicht —
apt install televisionschlägt auf einem Standardsystem fehl - cargo install television: aktuell, aber ein Rust-Build auf jeder Maschine, außerhalb von apt und ohne Handbuchseite oder Vervollständigungen
- Das Upstream-Installationsskript: bequem, schreibt aber hinter dem Rücken der Paketverwaltung ins System und aktualisiert sich nach eigenem Zeitplan
- deb.griffo.io: neueste Version mit automatischen Updates
- ✅ Kanäle passen zum Binary: Kanal-Prototypen entwickeln sich mit dem Werkzeug — erst ein aktueller Build macht
tv update-channelsnützlich statt verwirrend - ✅ Die einzige apt-Quelle: Television ist weder in den Debian- noch in den Ubuntu-Archiven; dieses Repository paketiert den offiziellen Upstream-Build
- ✅ Automatische Updates: Pakete werden innerhalb von Stunden nach Upstream-Releases aktualisiert
- ✅ Vollständiges Paket: das Upstream-Binary als
/usr/bin/tv, die Handbuchseitetv.1sowie Vervollständigungen für bash, zsh und fish - ✅ Drei Architekturen, ein deklarierter Konflikt: amd64, arm64 und i386 — und das Paket deklariert einen Konflikt mit
treeviewx, dem derselbe Pfad/usr/bin/tvgehört, damit apt dich warnt statt zwei Pakete darum streiten zu lassen - ✅ Multi-Distribution: läuft auf Bookworm, Trixie, Forky und Sid
- ✅ Einfache Wartung: Updates mit den üblichen apt-Befehlen
📦 Paket-Build-Repository
Die Debian-Pakete werden in diesem GitHub-Repository automatisch gebaut und gepflegt:
- 📼 television-debian - Builds der neuesten Releases
🔗 Verwandte Pakete
Ebenfalls verfügbar über deb.griffo.io:
- fzf - Der klassische Fuzzy-Finder, falls dir sein Modell lieber ist
- ripgrep - Schnelle rekursive Suche als Quelle für einen Kanal
- zoxide - Verzeichnissprünge, die gut zu tv dirs passen
- Yazi - Terminal-Dateimanager zum Durchsehen des Gefundenen