datentraeger

geistige Umweltverschmutzung

Jabber im Terminal

December 9, 2017 cli Debian/GNU Linux Groupware

Ich habe jetzt über die Zeit einige cli-chat Programme angeschaut. Voraussetzung in erster Linie war für mich XMPP, jedoch IRC fand ich auch nicht ganz uninteressant… Früher hab ich gelegentlich centerim für xmpp verwendet, das ist aber seit Wheezy nicht mehr im Repository.

Mein Fazit: WeeChat ist meine erste Option, wenn es um XMPP und IRC geht. Falls nur XMPP verwendet wird, würde ich auf Profanity setzen. Zu erwähnen bleibt hier: Profanity setze ich schon seit mehreren Wochen ein, WeeChat eigentlich erst seit jetzt. Also kann ich zu WeeChat/XMPP nicht wirklich etwas glaubwürdiges sagen. Alle anderen Tools habe ich mehr oder weniger in ein paar Minuten “evaluiert”, also sind meine Aussagen komplett unbrauchbar….das sind lediglich meine ersten Eindrücke bzw. wie “wohl” ich mich damit “gefühlt” hab… Ich werde definitiv WeeChat über die nächsten Wochen genauer anschauen. Will ja sowieso auch einen eigenen IRC-Server hinstellen demnächst…

mcabber

Mcabber ist ein weiterer Jabber-Client für die Konsole.

Vorteil: in Stable enthalten

Config Beispiele findet man auf Github. Richtig warm werde ich damit aber auch nicht, es passt mir einfach nicht recht, weiss auch nicht warum…

Das wohl wichtigste: mit Pg-Up/Pg-Down navigiert man durch die Buddyliste. Wenn man einen Account markiert hat, kann man eigentlich schon drauflos-schreiben. Ich brauchte ein Momentchen, bis ich das kapiert hab.

finch

Finch ist eigentlich Pidgin für die Konsole. Ich fühle mich irgendwie aber einfach nicht wohl, obwohl die Bedienung sehr simpel ist und wohl auch die Features nicht schlecht sind. Pidgin ist ja bekanntlich ganz gut. Aber auf der Konsole passt es mir einfach nicht…nur schon die “kleinen Fenster” im Terminal nerven mich irgendwie. Warum nicht den kompletten Platz des Terminals nutzen und so ein “Fenster” öffnen” ? Aber für hartgestottene Pidgin-User aber bestimmt eine gute Wahl. Ich weiss jetzt auch nicht, ob alle Plugins von Pidgin hier auch funktionieren. Falls ja, ganz klar ein Pluspunkt (z.B. Group-IM etc).

profanity

Profanity finde ich recht sympathisch. Die ganze Command Reference findet man auf der Website. Auch die Dokumentation ist sehr gut. Zwischen Chats wechselt man mit “Alt”+Nummer. Aliase etc. lassen sich einfach im config-File definieren. Zum Chatten sehr angenehm, meiner Meinung nach…

Vorteil: simples handling

Nachteil: nur in sid (oder Jessie) derzeit, Package lässt sich aber problemlos auch in Stable/testing montieren

ekg2

EDIT Juli 2016: ekg2 hab ich ganz vergessen, obwohl ich es bereits schon mal installiert hatte….

ekg2 finde ich auf den ersten Blick recht sympathisch. Egk2 kann mit Jabber, IRC und GaduGadu (wasimmer das auch ist) verbinden.

Konfiguration (Jabber)

Als erstes lädt man das Jabber-Plugin. Dann kann man den Jabber-Account hinzufügen und das Passwort setzen.

plugin +jabber
/session -a xmpp:peter.beck@foo.li (server mail.foo.li)
/session password <PASSWD>

Nun kann man das ganze speichern (macht man das nicht, fragt ekg2 beim Beenden nach, ob die Einstellungen gespeichert werden sollen

save

Verbinden kann man sich mittels connect

connect

Möchten man, dass der Jabber-Account beim Start von ekg2 automatisch verbunden wird, legt man dies in .config/ekg2/sessions-jabber beim entsprechenden Account fest

[xmpp:peter.beck@foo.li]
...
auto_connect=1
...

Chat

Einen Chat kann man mit query <jid> starten. JIDs wedern automatisch completed…

/query peter.beck@foo.li

Den Chat beendet man mit Alt-K, was aber auch beim neuen Chat erwähnt wird von ekg2.

Mittels Alt-Nummer kann zwischen den verschiedenen Fenstern gewechselt werden.

Nicklist

By Default finde ich die Kontaktliste rechts etwas sehr schmal. Dies kann man entweder ‘on the fly’ anpassen, angenehm ist in ekg2, dass die commands mit tab eingegeben werden können. So sieht man auch auf Anhieb, was z.B. ncurses: sonst noch anbietet…

/set ncurses:contacts_size 20

Wenn man jedoch immer dieses Grösse haben möchte und dies nicht ständig manuell setzen will, definiert man es im Config-File unter .config/ekg2/config-jabber

...
ncurses:contacts_size 20
...

Logging

Das ganze hab ich bei mir nicht eingerichtet, dachte mir jedoch, dass es nicht schlecht ist, wenn ich’s trotzdem kurz hier reinschreibe…

plugin +logs
set logs:log 2
set logs:path

Fenster

Auch dies hab ich selbst nicht getestet – Man kann für Jabber auch ein separates Fenster definieren, um IRC und Jabber in eigenen Fenstern zu verwenden (denke ich mal)

/window new
session -w jid:peter.beck@foo.li
/connect

Alles in allem finde ich ekg2 recht sympathisch. Was mir hier ein bisschen Sorgen bereitet: Keine Ahnung, wie aktiv die Entwicklung hier noch ist. Zudem ist das meiste der Dokumentation in Polnisch verfasst, aber über das kann man dank Übersetzungsprogrammen noch hinwegsehen….

Vorteil: Simpel, Autocompletion, im Debian Repository

Nachteil: Dokumentation grösstenteils nur in polnisch verfügbar, Webseite scheint verlassen (Domain-Name am 22.6.2018 abgelaufen). Das Debian Package hat sich auch seit Jessie nicht mehr wirklich geändert….

poezio

Den hab ich grad eben per Zufall gefunden, selbst nicht angeschaut / getestet. Der Vollständigkeit halber erwähn ich aber auch Poezio hier noch…

weechat

Generell ist WeeChat ja ein IRC-Client (oder ?). Aber auch XMPP (via Plugin) ist verfügbar. Von der Bedienung und den Features würde ich aber klar profanity bevorzugen. Aber um einfach ein bisschen zu chatten, reicht WeeChat via Plugin allemal aus. Wechsel zwischen den Chats ist auch hier “Alt”+Nummer des Chats. (EDIT: ab sid muss das Package ‘weechat-lua‘ installiert sein (bisher in ‘weechat-plugins’ enthalten)

Vorteil: im Repo vorhanden, IRC + XMPP in einem Client, erweiterbar (sehr viele Scripts verfügbar). Auch für Matrix gibt es ein Script, was ich selber aber erst installiert hab und bisher noch nicht gross getestet hab (Falls das ganze nach dem Integrieren unglaublich lahm wird: /lua reload matrix scheint das zu beheben und WeeChat wieder brauchbar zu machen).

Nachteil: nur grundlegende XMPP-Funktionen verfügbar, mehr aber auch nicht (soviel ich weiss). Zum Beispiel können mittels /jchat nur User angeschrieben werden, welche auch online sind. Ich sende aber immer wieder mal Messages an User, die derzeit grad nicht online sind. Das ist schade.

Basics

Einige Basics zu WeeChat

Server hinzufügen

Server hinzufügen ist straight-forward. Der Name kann natürlich frei gewählt werden…

/server add debian irc.debian.org
/server add freenode chat.freenode.net

Automatische Verbindung zu Server beim Start (natürlich immer mit entsprechendem Server-Alias, das man vergeben hat)

/set irc.server.freenode.autoconnect on

Das IRC Login speichern: siehe diesen Post…

Jabber

[EDIT 05/2020]: Zwischenzweitlich verwende ich das keine Plugins mehr in WeeChat, sondern nutze bitlbee für Jabber, Matrix, Twitter, GnuSocial und Mastodon.

Um Jabber in WeeChat benutzen zu können, muss erstmal das Plugin montiert sein.

/jabber add foojabber peter.beck@foo.li password mail.foo.li
/jabber connect foojabber
set jabber.server.foojabber.autoconnect on

Matrix

Matrix richtet man ähnlich ein, auch hier muss natürlich erst das Plugin montiert sein

/set plugins.var.lua.matrix.homeserver_url = "https://matrix.foo.li/"
/set plugins.var.lua.matrix.user username
/set plugins.var.lua.matrix.password password
/matrix connect

Als ich das ganze beim ersten mal verbunden hab, wurde Weechat extrem lahm, nicht mehr bedienbar. Grund ist (seweit mir bekannt), wenn die User in Matrix HQ gelistet werden, dauert das so lange, weil dieser Raum komplett überfüllt sei. Abhilfe hat bei mir das Ausblenden der Nickliste gebracht

/bar hide nicklist

Notifications

Wenn man via libnotify benachrichtigt werden möchte, finde ich dieses Plugin noch ganz gut.

Nicklist

Bei langen Usernamen verschwendet die Nicklist viel zu viel Bildschirmplatz. Ich begrenze meine auf 18 Zeichen

/set weechat.bar.nicklist.size 14
/set weechat.bar.nicklist.size_max 18

Durch die Nicklist scrollen kann man übrigens mit Alt-F11/F12

Away Messages

Oft sieht man etliche Join/Quit Messages, die nicht wirklich interessant sind und das ganze recht übersichtlich machen. Hierzu gibt es aber eine Einstellung

/set irc.look.smart_filter on
/filter add irc_smart * irc_smart_filter *

Somit sieht man nur die Leave-Messages von Usern, die innert der letzten 10 Minuten aktiv waren. Der Wert lässt sich via /set irc.look.smart_filter_delay <min> definieren, falls man mehr/weniger als 10 Minuten möchte.

Channels

Um Channels zu suchen, finde ich /msg alis list wesentlich angenehmer als nur /list. Mit /list werden alle Channels aufgelistet, das kann also verdammt viel sein.. Mit alis (advanced listing service) kann man granularer suchen

/msg alis list *proxmox*
Channels automatisch verbinden
/set irc.server.freenode.autojoin "#channel1,#channel2"

Durch die Channels scrollt man mit Alt-Pfeiltasten.

Einstellungen

Generell kann man mit /set eigentlich alle Einstellungen anpassen. Ob man das jetzt via /set oder direkt im Config-File macht, ist wohl “Ansichts-Sache”. Ich bin eher der Config-File Typ..

/set irc.server.freenode.username "LordGuinness"
/set irc.server.freenode.realname "Peter V. Beck"

Wichtig ist jedoch, falls man mit /set Einstellungen anpasst, dass man diese speichert und reloadet, sonst ist es beim nächsten Start weg !

/save
/reload

Scripts

Scripts können entweder manuell heruntergeladen werden oder via “/script install scriptname”

Autoload beim Start

Generell reicht hier einfach ein Symlink im (entsprechenden) autoload Directory.

peter@peanut:~/.weechat/python/autoload$ ln -s ../i3lock_away.py

irssi

Auch irssi kann mit XMPP verbindenm sofern das entsprechende Script installiert ist (unter Debian: irssi-plugin-xmpp). Ich denke, es macht auch Sinn, weitere Scripts (irssi-scripts) zu montieren (da sind jenste Scripte enthalten).
Ich hab das ganze nur kurz angetestet, fertige Dokumentation steht noch aus… generell muss man das xmpp script laden, dann kann man sich verbinden. Hier mal kurz “angekrazt”:

/load xmpp
16:25 -!- Irssi: Loaded module xmpp/core
16:25 -!- Irssi: Loaded module xmpp/text
16:25 -!- Irssi: Loaded module xmpp/fe
/xmppconnect -host mail.foo.li peter.beck@foo.li [pass]
16:25 -!- Irssi: Looking up mail.foo.li
16:25 -!- Irssi: Connecting to mail.foo.li [192.168.10.100] port 5222
16:25 -!- Irssi: Using STARTTLS encryption. 
16:25 -!- Irssi: warning SSL (mail.foo.li): certificate hostname does not match expected hostname
16:25 -!- Irssi: Authenticated successfully. 
16:25 -!- Irssi: Requesting the roster. 
16:25 -!- Irssi: Connection to mail.foo.li established

Für die Nicklist verwendet man /roster

wttr.in - Wetter im terminal

mit checkinstall source paketieren

1 thought on “Jabber im Terminal”
  1. Peter V. Beck, I.
    December 9, 2017 at 11:55 pm

    Jabber im Terminal http://blog.datentraeger.li/?p=631

Comments are closed.

Search
Posts
  • tt-rss update
  • freerdp ERRCONNECT_TLS_CONNECT_FAILED
  • Windose – kein Internet
  • Rechner ohne IP
  • Goodbye Nvidia
Archives
Categories
Tags
3D-Printing Android Apple Arch BBOS/QNX cli Container Database Debian/GNU Linux Docker foo.li FSFE fvwm git Gnome Gnusocial Groupware irc IT Java LaTeX lvm Mail Mobile Movies Multimedia Music Nonsense Office Packaging PHP Puppet Redmine SQL Think-About Uncategorized Vaping vim Virtualisierung Web Win WTF www-links X11 XMPP
Meta
  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
Blogroll
  • Datentraeger Pics
  • foo.li systeme + software
  • GnuSocial.li
Proudly powered by WordPress | Theme: Doo by ThemeVS.