newsboat
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 22.04 Jammy Jellyfish
Ubuntu 20.04 Focal Fossa
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
newsboat 🇬🇧 ist ein RSS-Feedreader für die Konsole der auf allen unixartigen Betriebssystemen wie Linux, BSD oder MacOS X läuft. Es handelt sich dabei um eine Weiterentwicklung des Feedreaders newsbeuter, der nicht mehr aktiv entwickelt wird.
Er unterstützt Filter, das Setzen von Tags und Flags, das Abrufen von Newsfeeds über einen Proxy-Server, Podcasts, den Abgleich mit OMPL-Abonements und vieles mehr.
Was ihn ebenfalls auszeichnet ist dass newsboat sich durch sehr viele Optionen den eigenen Wünschen anpassen lässt. Es können eigene Tastenbelegungen definiert werden, das Aussehen lässt sich von der Farbe bis zur Formatierung der Darstellung ändern und es können noch hunderte andere Kleinigkeiten vom Nutzer festgelegt werden.
Installation¶
newsboat
befindet sich bedauerlicherweise nur bis Ubuntu 23.10 in den Paketquellen und kann durch folgendes Paket installiert [1] werden:
newsboat (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install newsboat
Oder mit apturl installieren, Link: apt://newsboat
via snap¶
Ab Ubuntu 24.04 empfiehlt sich die Installation des snap-Paketes von newsboat
, das von den Entwicklern gepflegt wird:
sudo snap install newsboat
Aufgrund der Abschottung von snap-Paketen in isolierten Umgebungen bringt dies jedoch einige Einschränkungen mit sich; so kann lediglich xdg-open für die Browser-Funktion genutzt werden.
Selber bauen¶
newsboat
kann auch eigenhändig aus den Quellen kompiliert werden. Als Bausystem kommt GNU make zum Einsatz. Der Prozess wird auf GitHub beschrieben.
Benutzung¶
newsboat kann nach der Installation im Terminal[3] durch den Befehl:
newsboat
gestartet werden. Vor dem ersten Start empfiehlt es sich allerdings, zunächst Feeds hinzuzufügen.
Feeds hinzufügen¶
Von Hand¶
Um Feeds von Hand hinzuzufügen öffnet man mit einem Editor[4] die Datei ~/.newsboat/urls und fügt dort die Adressen der Feeds ein, in jede Zeile einen.
Wenn newsboat gerade läuft, lässt sich die Konfigurationsdatei über Strg + R neu einlesen (siehe Tastenbelegungen).
Aus anderen Programmen importieren¶
newsboat bietet unzählige Möglichkeiten Feedlisten aus einem anderen Programm heraus zu importieren. Einige stehen unter Konfiguration durch Startparameter wieder andere stehen in der sehr ausführlichen offiziellen Dokumentation, die auf der Internetseite des Projektes zu finden ist. Wer zuvor newsbeuter
nutzte, muss nichts importieren, da automatisch alle Konfigurationen übernommen werden.
Hier sei nur auf folgenden Shellbefehl verwiesen mit dem man sehr einfach Feedlisten im opml-Format zur newsboat URL-Liste hinzufügen kann. Wenn ein anderes Programm seine Feedliste zum Beispiel in der Datei feedlist.opml speichert kann man sie mit folgendem Befehl nach newsboat portieren:
newsboat -i feedliste.opml
In newsboat¶
Hat newsboat schon gestartet, lässt sich die Datei ~/.newsboat/urls durch die Betätigung der Tasten ⇧ + E im Standardeditor öffnen und bearbeiten. Nachher wird sie neu eingeladen.
Tastenbelegung¶
Die grundlegende Benutzung ist recht simpel. Mit ⇧ + R kann man alle Feeds auf einmal aktualisieren und mit R nur den momentan ausgewählten Feed. Mit ⏎ kann man einen Feed und dort dann die einzelnen Nachrichten betreten und lesen. Mit Q kommt man immer wieder zum Hauptmenü zurück. Mit ↑ und ↓ kann man innerhalb der Listen navigieren.
Eine vollständige Liste der Tastenbelegung kann man dieser Tabelle entnehmen:
Tastenkürzel | Funktion | Tastenkürzel | Funktion |
⏎ | Öffnet den momentan ausgewählten Feed oder die Nachricht. | Q | Beendet newsboat oder wechselt zum nächst höheren Menü. |
N | Geht zum nächsten ungelesenen Artikel. | P | Geht zum vorherigen ungelesenen Artikel. |
R | Aktualisiert den momentan ausgewählten Feed. | ⇧ + R | Aktualisiert alle Feeds. |
⇧ + A | Markiere alle Nachrichten im momentan ausgewählten oder betretenen Feed als gelesen. | ⇧ + C | Markiere sämtliche Nachrichten in newsboat als gelesen. |
S | Speichert die momentane Nachricht in eine Datei. | ⇧ + ß | Zeigt die Hilfe an. |
Strg + U | Schaltet zwischen HTML-Ansicht und Quellcode-Ansicht innerhalb eines Artikels um. | ⇧ + N | Setzt einen ausgewählten Artikel als gelesen/ungelesen. |
L | Verbirgt oder zeigt Feeds die nur gelesene Nachrichten enthalten im Hauptmenü. | U | Zeigt alle URLs eines Artikels in einer Liste. |
Strg + T | Entferne Tag von Feed. | T | Wähle einen Tag aus. |
⇧ + 7 | Öffnet den Such-Dialog. | E | Füge die Podcast Downloadurl, wenn eine gefunden wurde in die Podcast-Download-Warteschlange. |
Strg + R | Liest die ~/.newsboat/urls-Datei neu ein. | Strg + L | Zeichnet den Bildschirm neu. |
⇧ + . | Öffnet eine Kommandozeile innerhalb von newsboat, womit man ua. Ruby-Makros laden kann. | ⇧ + F | Setzt einen neuen Filter. |
F | Wählt einen bereits definierten Filter aus. | Strg + F | Entfernt einen gesetzten Filter. |
Strg + B | Fügt einen Artikel oder eine ausgewählte Url zu den Lesezeichen hinzu. | Strg + E | Setze eine Flag des ausgewählten Artikels. |
Strg + N | Geht zum nächsten Feed mit ungelesenen Artikel. Funktioniert nur aus einer Artikelübersicht eines anderen Feeds heraus. | Strg + P | Geht zum vorherigen Feed mit ungelesenen Artikel. Funktioniert nur aus einer Artikelübersicht eines anderen Feeds heraus. |
↑ | Geht in einer Auswahl eins nach oben. | ↓ | Geht in einer Auswahl eins nach unten. |
Tags setzten¶
Tags erlauben einem seine Feeds zu kategorisieren. Man kann in der Übersicht einzelne Tags auswählen und dann nur die Feeds anzeigen lassen, die diesen Tag besitzen. Man setzt Tags in der ~/.newsboat/urls indem man sie einfach von Leerzeichen von einander getrennt in der Zeile des Feeds ans Ende anfügt.
Folgende Zeile zum Beispiel:
https://ikhaya.ubuntuusers.de/feeds/full/10/ Ubuntu Linux
weist den Ikhaya-News die beiden Tags Ubuntu
und Linux
zu. Innerhalb von newsboat kann man durch Drücken von
T zwischen den einzelnen Tags auswählen.
Wenn man einen Tag benutzen möchte der selbst Leerzeichen beinhaltet muss man ihn in Anführungszeichen setzen wie zum Beispiel:
https://ikhaya.ubuntuusers.de/feeds/full/10/ "Ubuntu Linux"
Dies setzt nur einen einzigen Tag für die Ikhaya-News mit dem Namen Ubuntu Linux
.
Konfiguration¶
Durch Start-Parameter¶
Einige wenige Einstellungen lassen sich durch Kommandozeilen Parameter vornehmen, die man beim Start von newsboat an den Befehl dranhängt. Wie sie heißen und ihre Bedeutung kann man dieser Tabelle entnehmen:
Parameter | Bedeutung |
-r | Überprüft alle Feeds beim Start von newsboat. |
-e | Exportiert die Feeds von newsboat ins opml-Format und schreibt sie auf den Screen. |
-i DATEI | Importiert eine Feedliste aus DATEI im opml-Format nach newsboat. |
-u DATEI | Importiert eine Url-Liste aus DATEI nach newsboat. |
-c DATEI | Wählt DATEI als alternativen Cache. |
-C Datei | Wählt DATEI als alternative Konfigurationsdatei. |
-X | Leert den Cache. |
-h | Zeigt eine Hilfe. |
Durch eine Konfigurationsdatei¶
Um newsboat durch eine Konfigurationsdatei einstellen zu können muss diese erstmal erstellt werden. Standardmäßig wird die Datei config im Ordner ~/.newsboat gelesen welche man mit folgendem Befehl erstellen kann:
touch ~/.newsboat/config
Mögliche Werte für die Konfigurationsdatei kann man dieser Tabelle entnehmen. Die Werte die in der Spalte "Standard" stehen müssen nicht eingetragen werden, da sie wie der Name bereits sagt standardmäßig benutzt werden auch wenn sie nicht eingestellt sind. Eine vollständige Liste der sehr zahlreichen Einstellungsmöglichkeiten kann man der offiziellen Dokumentation entnehmen.
Option | Werte | Standard | Bedeutung | Beispiel |
always-display-description | true/false | false | Zeigt immer die Beschreibung eines Feeds an. | always-display-description true |
browser | Befehl | Standardbrowser | Damit kann man festlegen, mit welchem Befehl/Browser Links geöffnet werden sollen. | browser firefox -new-tab |
auto-reload | yes/no | no | Wenn aktiviert werden alle Feeds beim Start von newsbeuter aktualisiert und dann innerhalb eines regelmäßigen Zeitintervals, dass man mit reload-time einstellen kann. | auto-reload yes |
reload-time | Zahl | 60 | Alle wieviel Minuten die Feeds aktualisiert werden sollen. | reload-time 30 |
max-items | Zahl | 0 | Wieviele Artikel pro Feed gleichzeitig gespeichert werden sollen. 0 bedeutet unendlich viele. | max-items 70 |
proxy | server:port | keine Standardeinstellung | Hier kann man einen Proxy angeben über den die Feeds aktualisiert werden sollen, wenn use-proxy aktiviert ist. | proxy localhost:8123 |
use-proxy | yes/no | no | Benutzt den angegebenen Proxy | use-proxy yes |
user-agent | String | "" | Benutzt den angegebenen User-Agent beim holen von Artikeln. | user-agent "Lynx/2.8.5rel.1 libwww-FM/2.14" |
Farben einstellen¶
Man kann die Farben selber einstellen. Dazu trägt man die gewünschten Farben in der Syntax
color [Bereich] [Vordergrundfarbe] [Hintergrundfarbe]
in der ~/.newsboat/config ein. Folgende Bereiche können verstellt werden:
listnormal
listfocus
info
background
article
Als Farben verwendet man:
black
red
green
yellow
blue
magenta
cyan
white
default
Podcasts¶
newsboat unterstützt das Speichern und Herunterladen von Podcasts. Ein Podcast ist ein RSS-Feed der Medieninhalte, meist in einem Audioformat in einem Artikel durch enclosure
-Tags definiert hat. Hat man solch einen Feed abonniert kann man in dem jeweiligen Artikel durch Drücken von
E den Podcast zur Downloadwarteschlange hinzufügen, welche sich standardmäßig in ~/.newsboat/queue befindet.
Den Download kann man dann mit dem Programm podboat starten. podboat wird automatisch mit newsboat mitinstalliert und wird durch den Befehl:
podboat
gestartet.
Die Tastenbelegung für podboat kann man folgender Tabelle entnehmen:
Tastenkürzel | Funktion | Tastenkürzel | Funktion |
Q | Beendet podboat. | D | Lädt den markierten Podcast herunter. |
C | Bricht den gewählten Download ab. | ⇧ + D | Löscht einen Podcast aus der Warteschlange. |
⇧ + P | Aktualisiert die Übersicht und Warteschlange und entfernt fertige Downloads. | A | Lädt sämtliche Podcasts in der Liste automatisch herunter. |
P | Öffnet den heruntergeladenen Podcast bzw. spielt ihn ab. | ⇧ + ß | Zeigt eine Hilfe an. |
podboat teilt sich die Konfigurationsdatei ~/.newsboat/config mit newsboat. Man kann folgende Einstellungen in dieser Datei für podboat vornehmen:
Option | Werte | Standard | Bedeutung | Beispiel |
download-path | Pfad | ~/ | Legt einen Downloadordner fest. | download-path "~/Downloads" |
max-downloads | Zahl | 1 | Wenn man alle Podcasts automatisch herunterladen lässt, legt man hiermit die maximale Anzahl gleichzeitiger Downloads fest. | max-downloads 3 |
player | Befehl | "" | Gibt den Befehl an mit dem ein heruntergeladener Podcast geöffnet werden soll. | player "mp3blaster" |
podcast-auto-enqueue | yes/no | yes | Alle Podcasts, die newsboat in Artikeln findet werden automatisch zur Warteschlange hinzugefügt. | podcast-auto-enqueue yes |
Player-Skript¶
Wie man sieht kann man nur einen generellen Player auswählen. Dies ist problematisch, wenn man Podcasts hat, die mal als Audio, mal als Video und manchmal auch nur als PDF daherkommen und man die unterschiedlichen Formate mit unterschiedlichen Programmen von podboat aus öffnen bzw. abspielen möchte.
Um dieses Problem zu beseitigen kann man sich mit einem Skript helfen, zum Beispiel indem man folgendes Ruby-Skript nutzt (Ruby muss installiert sein): klick ⮷ und ausführbar machen mit:
chmod +x openmyfile
Danach verschiebt man es entweder nach /usr/local/bin/ oder ~/bin/ und gibt es in der newsboat-Konfigurationsdatei als Player an:
player "openmyfile"
Jetzt wird podboat immer dieses Skript aufrufen, welches dann Anhand der Dateiendung entscheidet mit welchem Programm der Podcast geöffnet werden soll. Durch editieren des Skriptes kann man einstellen mit welchesm Programm, welche Dateiendung geöffnet werden soll.
Links¶