ranger file manager

Ranger ist ein genialer, python-basierter File-Manager fΓΌr die Konsole (GPLv3). Keybindings sind identisch zu vim anwendbar, was die Bedienung sehr angenehm und effizient macht.

Ich setze Ranger jetzt erst seit einigen Wochen gelegentlich ein, jedoch starte ich immer ΓΆfter nur noch Ranger und lasse nautilus etc. “links liegen”… πŸ˜‰

Initiale Config

MΓΆchte man eine “Basic”-Konfiguration nach der Installation, kΓΆnnen diese via Parameter “–copy-config=all” angelegt werden.

Bild-Vorschau in Ranger anzeigen

Im gnome-terminal oder terminology werden die Previews jedoch nicht schΓΆn aktualisiert (siehe auch Issue #859). Mit terminator, lxterm oder urxvt (PackageΒ rxvt-unicode-256color) beispielsweise besteht dieses Problem jedoch nicht…

Wichtigste Befehle

“yy” (kopieren), “pp” (einfΓΌgen) und “dd” (verschieben – um spΓ€ter irgendwo anders einzufΓΌgen wie beim Kopieren). Komplexere Funktionen werden mit “:” aufgerufen (bspw. :bulkrename – was ebenfalls ein geniales Teil ist. Siehe :help [c]ommands). Mehrere Files/Directories kΓΆnnen mit der Leertaste markiert werden.

Eine Shell im aktuellen Verzeichnis kann mit “S” gestartet werden. Auch Tabs sind mit Ranger mΓΆglich mit “Ctrl-N”. Einen Tab schliessen kann man mit – wie schon zu erwarten – “:q”

Auf Github ist eine detaillierte Dokumentation zu Ranger.

Eigene Mappings

Genial ist auch die MΓΆglichkeit, jenste Varianten von eigenen Keybindings zu erstellen. Hier nur mal ein Beispiel, spiele hier immer noch rum…

Schon anhand dieses kleinen Beispiels sieht man das Potential – hier kann man wirklich das ganze so gestalten, dass man sehr effizient und schnell arbeiten kann…

Mounten von USB-Sticks / -Disks

Zum mounten von Massenspeicher verwendet man udisksctl (Package udisks2).

Via lsblk checkt man die angeschlossenen Drives, dann kann man mit udisksctl mounten bzw. wieder ausmounten:

Ich denke, eine andere Alternative kΓΆnnte auch die Verwendung von pmount sein, was ich aber nicht angeschaut hab.

Ranger als Filechooser in vim

Im Ranger-Repo gibt’s ein vim-Snippet (und/oder vim-netranger), das Ranger als Filechooser einsetzbar macht. Ich glaube, das ist nur bis Version 1.7.* kompatibel. Es gibt jedoch eine andere Implementation, hab’s jedoch selbst nicht angeschaut. Genrell mΓΆchte ja so wenig wie mΓΆglich an vim Γ€ndern und die integrierten Funktionen verwenden….

Ich hab’s bei mir folgendermassen integriert

So gibt’s keinen Fehler, sollte das File nicht vorhanden sein…

mit checkinstall source paketieren

Momentan beschΓ€ftige ich mich ein bisschen mit dem Thema Mailarchivierung und Mailpiler gefΓ€llt mir recht gut und hat auch entsprechende Reviews.

Der ganze Post ist schon etwas “outdated”, da ich ihn schon lΓ€nger als Entwurf drin hatte, aber generell zeigt er glaub schon das, was ich sagen wollte – mit checkinstall lΓ€sst sich recht einfach ein Package erstellen… Habe das ganze ΓΌber die Zeit natΓΌrlich x-mal angepasst, anbei sind nur die ersten Versuche…

FΓΌr Mailpiler gibt es aber keine Packages, nur die Sourcen. Und wenn ich das ganze ernsthaft einsetzen werde, mΓΆchte ich fΓΌr’s Deployment eigentlich schon gerne Packages nutzen. Hier kommt checkinstall ins Spiel, mit dem man recht simpel und schnell ein Package aus Sourcefiles generiere kann.

  • Source runterladen und entpacken
  • description-pak (Package Beschreibung) anlegen
  • postinstall-pak anlegen (mailpiler make postinstall)
  • Package erstellen
    Bei meinem Besipiel werden vor der ErstellungΒ  die Package-Informationen angezeigt und nach BestΓ€tigung wird das Package erstellt. Kann man natΓΌrlich auch Γ€ndern, dass keine Angabe erforderlich ist. Beim ersten Run wird gecheckt, ob das dok-pak Directory vorhanden ist. Falls nicht, kopiert es bei Bedarf die ΓΌblichen VerdΓ€chtigen dort rein (README, RELEASE_NOTES, LICENSE etc). Wenn man Lust hat, kann man natΓΌrlich auch alles interaktiv angeben, ohne checkinstall-Parameter. Pkgname hab ich bewusst geΓ€ndert, weil das Package sonst einfach piler heisst. Und da gibt es schon ein Package, welches aber nix mit mailpiler zu tun hat.

Und am Schluss kriegt man ein hΓΌbsches deb

Jabber im Terminal

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…

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…

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

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.

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…

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

Jabber

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

Matrix

Matrix richtet man Γ€hnlich ein, auch hier muss natΓΌrlich erst das Plugin montiert sein

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

Nicklist

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

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

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

Channels automatisch verbinden

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..

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

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.

 

wttr.in – Wetter im terminal

Ach, das ist lustig und doch irgendwie sinnvoll…

Ich kΓΆnnte schwΓΆren, dass ich das schon frΓΌher mal gepostet hab, finde aber nix mehr. Wahrscheinlich hab ichs versaut, als die Disk das letzte mal abgeraucht war und ich kein Backup hatte…

Translate Shell

Translate Shell tut genau das, was der Name vermuten lΓ€sst – es lΓ€sst Google Translate auf der Commandline nutzen.

Das ganze ist stinkeinfach

Um von einer gewissen Sprache in eine andere zu ΓΌbersetzen, im Beispiel englisch – deutsch, gibt man das einfach mit an (mit -R werden alle verfΓΌgbaren Sprachen aufgelistet)

Die -b Option ist brief, also die Kurzfassung. Ansonsten werden einige Zeilen mehr ausgegeben. Da das ganze in Quotes gesetzt ist, wird es als Satz ΓΌbersetzt. Ansonsten wΓΌrden alle mitgegebenen WΓΆrter einzeln ΓΌbersetzt.

Aber auch als WΓΆrterbuch lΓ€sst sich trans einsetzen (mit der -d Option)

Also ich finde es noch recht angenehm und hab es doch schon einige male verwendet.

 

 

PrΓ€sentation mit Markdown

Wie geil ist das denn…werde ich mir angewΓΆhnen

Mit pandoc / latex kann man verdammt einfach PrΓ€sentationen bauen. Und zwar nur mit einem markdown File. Das gefΓ€llt mir so gut, dass es mir den Speicherplatz fΓΌr LaTeX wert ist (das Teil braucht ja 1GB Platz und ausser in diesem Fall brauch ich das nie…)

Wenn man also erstmal nur Pandoc montiert, gibt’s sonst auch gleich Motze, weil das LaTeX-Zeugs nicht gefunden wird (das ist nur die erste von vielen ;-))

Also montiert man sich halt texlive-latex-extra

Jetzt klappt das ganze auch mit dem PDF.

Die Basis fΓΌr eine kleine PrΓ€sentation kann etwa so aussehen. Jedes Haupt-Heading wird zu einem neuen Slide. Die unterschiedlichen Themes von Beamer findet man auf Anhieb in der Suchmaschine seiner Wahl.

Also ich fahr im Moment grad total auf das ab πŸ˜‰

Marp

Wenn man das ganze etwas simpler mΓΆchte, empfehle ich, einen Blick auf Marp zu werfen. Da kommt der Editor gleich mit und es gibt automatisch eine Vorschau beim Erstellen. GefΓ€llt mir auch ganz gut.

Marp Screenshot

Network Manager Verbindung via cli

Bisher hab ich meine VPN-Verbindungen immer in der Shell via “openvpn –config pfad-zur-config” gestartet. Wenn man die Verbindungen im Network-Manager aber definiert, kann man diese auch via “nmcli” starten. Mit der Eingabe von “nmcli con” werden alle Verbindungen aufgelistet. Ein Verbindung aufbauen kann man mit

Trennen geht analog

Falls die Verbindung jedoch ein Passwort benΓΆtigt, fragt nmcli danach (im GUI klappts mit dem gespeicherten Passwort). Um das zu umgehen, muss die entsprechende Verbindung unter /etc/NetworkManager/system-connections/ angepasst werden: password-flags muss auf ‘0’ gesetzt werden, zusΓ€tzlich muss die Sektion ‘vpn-secrets’ mit dem Passwort ergΓ€nzt werden (ich passe hier auch immer gerne noch das device mit einem aussagekrΓ€ftigerem Namen als nur “tun” an)

Sind die Verbindungen entsprechend angepasst, muss Network-Manager noch neugestartet werden, dann sollte es ohne Passwort-Abfrage im cli klappen.

Card- und CalDAV im terminal

Um’s grad vorweg zu nennen: Vieles hier hab ich von Florian Heinle’s Blog abgeschaut, welchen ich beim initialen Testen als erste Anlaufstelle verwendet hab. Im Gegensatz zu ihm hab ich aber die Debian-Packages verwendet.

Wie’s halt so ist, hΓ€tte ich das gern bei mir selbst dokumentiert.

Als erstes monitiert man mal die Packages khard, khal und vdirsyncer.

Sync einrichten

~/.config/vdirsyncer/config (siehe auch vdirsyncer Tutorial)

initiale Konfiguration

Dies ist nur einmalig nΓΆtig, oder falls neue Kalender- bzw. Kontakte-Folder hinzugefΓΌgt werden.

Nun kann der Sync durchgefΓΌhrt werden

mit vdirsyncer -vdebug sync kann man sich mehr Details beim Sync anzeigen lassen.

Cron fΓΌr automatischen Sync

Da man in der Regel nicht gern stΓ€ndig manuell erst einen Sync macht, damit man up-to-date ist, richtet man am schlausten einen simplen cron ein. Ich mach’s alle 5 Minuten.

Kontakte mit khard

Beim ersten Start wird gleich reklamiert, wenn das Config nicht vorhanden ist

Also kopieren wir am einfachsten mal die Beispielconfig her und passen dort die Pfade entsprechend an

Usage

Mit ‘khard ls <suchbegriff>’ kann man recht bequem Kontakte suchen. verwendet man ‘details’, werden alle Informationen zum Kontakt angezeigt.

Der Parameter ‘–help’ zeigt alle weiteren benΓΆtigten Parameter an. Recht selbsterklΓ€rend.

Integration in mutt

Mit dieser ErgΓ€nzung in .muttrc kann man Adressen mit dem Tabulator vervollstΓ€ndigen und khard sehr bequem mit Mutt verwenden.

Zudem kann man mit ‘A’ Adressen als neue Kontakte hinzufΓΌgen (in der Auflistung der Mails oder wenn das entsprechende Mail geΓΆffnet wurde).

Kalender mit khal

Die Konfiguration von khal ist recht simpel, einfach die gewΓΌnschen Kalender, die wir in vdirsyncer definiert haben, angeben in .config/khal/config und schon lΓ€uft das Teil (inital etwas lΓ€nger, was ja verstΓ€ndlich ist). Der muss wohl einfach wissen, wo er die ics-Files zu suchen hat.

Um nur schnell die aktuellen Termine anzuzeigen, reicht es aus, einfach ‘khal’ einzugeben.

MΓΆchte man Termine anlegen / bearbeiten, startet man ‘ikhal’. Mit ‘?’ kann man die wichtigsten Tasten anzeigen. Der Rest ist recht selbsterklΓ€rend, finde ich.

commands

Anstatt via ikhal kann man aber auch direkt via commanline einen Termin setzen, z.B.:

ganztΓ€gige Termine gibt man einfach ohne Zeitangabe an

mit der “-a”-Option kann der entsprechende Kalender gewΓ€hlt werden. Das ganze wird nach diesem Schema abgesetzt:

Die wichtigsten Optionen hier sind:

  • -l, –location=LOCATION Ort festlegen
  • -g, –categories=CATEGORIES kommagetrennte Liste von Kategoriern. Einige Server unterstΓΌtzen nicht mehrere Kategorien…
  • -r, –repeat=RRULE Ereignis-Wiederholung. Erlaubte Werte sind daily, weekly, monthly und yearly
  • -u, –until=UNTIL spezifizieren, wie lange das Ereignis dauern soll
  • –alarm DURATION Erinnerung vor dem Start des Ereignisses, sollte etwa so aussehen 1day 10minutes oder 1d3H10m, negative Werte starten nach dem Start des Ereignis.

weitere Beispiele

Ereignis heute um 18 Uhr mit Standardzeit von 1 Stunde im Standardkalender

Ereignis morgen um 16:30

adds a new event on 25th of October lasting from 18:00 to 24:00 with an additional description

Ein ganztΓ€giges Ereignis am 26. Juli im Kalender “work”, welches wΓΆchentlich wiederholt wird.

Detailliertere Informationen findet man beispielsweise hier.

Android / EAS

Wenn ich Kontakte in khal anlege, werden die wunderbar zum Server synchronisiert, auch Thunderbird und Webmail zeigen alles an. Jedoch motzt mein Android, welches via EAS verbunden ist, dass es nicht synchronisieren konnte.

Ob das nun ein EAS, SOGo oder khal-Problem ist, ist mir nicht ganz klar. Ich tendiere, dass es mit EAS etwas zu tun hat, sonst wΓΌrde TB und das Webmail ja auch nix anzeigen/motzen. Muss mal CalDAV am Handy einrichten und damit testen.

EDIT: Hab heute grad mal DAVdroid montiert – mittels Card- / CalDAV bestehen absolut keine Probleme mit dem Sync auf Android….

 

Notifications fΓΌr (Neo)Mutt

Mit “new_mail_command” kann man sich ganz einfach eine Notification fΓΌr neue Mails einrichten (https://www.neomutt.org/feature/new-mail)

Das ganze schaut dann etwa so aus (warum der Icon fehlt weiss ich jetzt auch grad nicht – eventuell was mit i3 zu tun ?)

conky mit compton

Hab mich ne Weile mit compton/conky abgeΓ€rgert, sobald compton ins Spiel kam, verschwand mein Conky.

Mit diesen Conky-Einstellungen scheint es nun aber endlich zu klappen. Ob hier alle Optionen nΓΆtig sind, weiss ich nicht genau, jedenfalls klappt es so nun, wie ich mir wΓΌnsche…