Skip to content

Da wollte ich gar nicht hin ...

Jetzt bin ich mit Gib XMPP eine Chance ... genau an dem Punkt, an dem ich nicht sein wollte.

Conversations als Android-Client ist grossartig, aber jede Bemühung, mehrere Devices auf die gleichen verschlüsselten und unverschlüsselten Chats zugreifen zu lassen, schlägt fehl.

"Archiving" ist selbstverständlich eingeschaltet.

Unter iOS habe ich ChatSecure und den Testflight von Monal versucht, neben dem, dass die Nachrichten nicht angezeigt werden, funktioniert auch die Synchronisierung nicht gut. Ich bekomme Benachrichtigungen zum Teil Stunden nachdem ich sie auf dem Android-Handy hatte.

Unter Linux habe ich Kopete und Gajim versucht, auch das zeigt mir nicht alle Nachrichten an.

Ohne die Möglichkeit, auf die Chatverläufe von verschiedenen Devices zuzugreifen, kann ich XMPP nicht brauchen.

Für mich haben Matrix (via Riot), RocketChat und Mattermost bis jetzt am Besten von den FLOSS-Lösungen funktioniert.

Bin über Feedback oder Hinweise, was ich anders oder besser machen kann, sehr dankbar.

Datenbankbackup mit MyDumper unter CentOS 7 ...

centos

Zum Backup meiner Datenbanken benutze ich schon seit Jahren MyDumper und das MyLoader-Tool. Der grosse Vorteil von MyDumper neben der Geschwindigkeit durch Parallelisierung ist, dass alle Datenbanktabellen in einzelnen Dateien vorliegen und so leicht modifiziert werden könnten.

Höhere Geschwindigkeit bedeutet auch, dass man öfter Backups machen kann (bei mir alle vier Stunden).

MyDumper muss selber übersetzt werden, wenn es nicht in der Distribution dabei ist. Den Anfang bildet dass Holen des Quelltextes:

$ git clone https://github.com/maxbube/mydumper.git mydumper.git

Danach setzen wir die Variablen für das Übersetzen des Quelltextes.

$ export CC=/home/dirk/workspace/sclgcc.bash
$ export CXX=/home/dirk/workspace/sclc++.bash
$ export MAKEFLAGS="-j $(lscpu | awk '/^CPU\(s\)/ {print $2}')"

Die ersten beiden Variablen habe ich im gestrigen Artikel erwähnt.

Die MAKEFLAGS sorgen dafür, dass make mit mehreren Threads arbeitet. Ich nehme dafür die Anzahl der CPUs, die mir das System meldet.

$ yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel

Nachdem wir neben dem C++ Compiler, Make und CMake die Vorbedingungen installiert haben, kann es auch schon losgehen.

$ cd /home/dirk/workspace/mydumper.git
$ git clean -dfx
$ cmake . -DMYSQL_LIBRARIES_mariadb:FILEPATH=/usr/lib64/libmariadbclient.a -DWITH_SSL=OFF -DBUILD_DOCS=off
$ make
$ sudo make install

Das "git clean" räumt unter anderem die Reste von alten Übersetzungsversuchen auf. Guckt Euch bitte die Parameter gut an, bevor Ihr das in Repos macht, in denen Ihr Schreibrechte besitzt.

Da auf meinen Servern die aktuelle stabile Version von MariaDB arbeitet und ich ebenfalls den MariaDB-Client installiert habe, muss cmake das auch mitteilen.

Der Backup-User benätigt in der Datenbank "nur" Select-, Reload und Lock Tables Berechtigungen.
CREATE USER 'b2'@'localhost' IDENTIFIED VIA mysql_native_password USING 'kryptisches Passwort';
GRANT SELECT, RELOAD, LOCK TABLES ON *.* TO 'backup'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

Nachdem jetzt alles fertig ist, kann das folgende Backupskript seinen Dienst tun.

#!/bin/bash
# db-backup.bash
set -o errexit

BACKUPDB_DIR="/srv/bak/dumps"
DB_USERNAME="backup"
DB_PASSWORD="kryptisches Passwort"
THREADS=$(lscpu | awk '/^CPU\(s\)/ {print $2}')

cd ${BACKUPDB_DIR}

/usr/local/bin/mydumper --user ${DB_USERNAME} --password ${DB_PASSWORD} --threads ${THREADS}

find ${BACKUPDB_DIR} -type d -name 'export*' -mtime +1 -exec xargs rm -r '{}' \+

WICHTIG: Am Ende des Skripts werden alle Backups gelöscht, die älter sind als ein Tag.

Aktueller C-Compiler auf CentOS 7 ...

centos

Spannend, ich hätte schwören können, dass ich das schon einmal im Blog hatte, kann einen entsprechenden Artikel aber leider nicht finden.

Ein Weg, einen aktuellen C-Compiler auf CentOS zu installieren sind die offiziell unterstützten SoftwareCollections, für unseren Fall insbesondere das Developer Toolset 7. Die achte Version gibt es schon für Red Hat Enterprise Linux 7, wird also in den nächsten Wochen auch in CentOS 7 verfügbar sein.

Zuerst werden die Software Collections aktiviert und aktualisiert

$ sudo yum install centos-release-scl
$ sudo yum update

Installation des entsprechenden Pakets mit allen Abhängigkeiten

$ sudo yum install devtoolset-7-gcc-c++
Welche Software Collections installiert sind, bekommt man übrigens mit dem Kommando scl --list heraus.

Eine Shell mit aktivierter Software Collection starten

$ gcc --version | head -1
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16)

$ scl --list
devtoolset-7

$ scl enable devtoolset-7 bash

$ gcc --version | head -1
gcc (GCC) 7.2.1 20170829 (Red Hat 7.2.1-1)

Neuen Compiler per Default aktivieren

Da man nicht jedes Mal eine neue Shell nutzen möchte, hilft der folgende Weg, das zu verwirklichen.

Wrapper Skripte für GCC und C++

#!/bin/bash
# sclgcc.bash

COMMAND="gcc $@"
scl enable devtoolset-7 "$COMMAND"
#!/bin/bash
# sclc++.bash
COMMAND="c++ $@"
scl enable devtoolset-7 "$COMMAND"

Setzen der Environment-Variablen, die cmake und make benutzen

$ export CC=/home/dirk/bin/sclgcc.bash
$ export CXX=/home/dirk/bin/sclc++.bash

Podcast-Hosting-Software gesucht ...

podcast

Vielleicht könnt Ihr mir helfen.

Momentan bin ich auf der Suche nach einer Podcast-Hosting-Software. Sie sollte folgende Eigenschaften haben:

  • Kein Wordpress, ich habe wirklich keine Ahnung von Wordpress und keine Zeit mich so einzuarbeiten, dass ich es sicher hosten kann und die Plugins zur Verfügung habe, die es meiner Ansicht nach für ein Blog oder einen Podcast braucht.
  • Gerne einen statischen Bloggenerator (am liebsten in Bash, Perl, PHP oder Python).
  • Kommentare sind Pflicht, meinetwegen auch durch eine selbst gehostete Kommentarfunktion.
  • Serverseitig kein Ruby, generell wäre mir eine der Skriptsprachen, in denen ich mich bewegen kann (siehe oben), lieb, aber das ist nicht zwingend.
  • Schön, aber nicht verpflichtend wäre der Podlove-Player.

DeimHart haben wir mit "meiner Blogengine" Serendipity betrieben. Leider ist der Podcast-Support immer noch sehr rudimentär, was der kleinen Zahl an Entwicklern geschuldet ist.

Gutes Markdown schreiben ...

Für einfache Texte nutze ich Markdown als Auszeichnungssprache. Das, was ich brauche, lässt sich dmit sehr gut umsetzen. Wenn es mehr sein müsste, würde ich vermutlich AsciiDoc oder reStructuredText verwenden.

Eigentlich möchte ich Markdown auch im Blog benutzen, aber über dreitausend alte Artikel möchte ich nicht gerne konvertieren.

Markdown hat sich an vielen Stellen als Standard für einfache Texte etabliert, daher lohnt sich die Beschäftigung damit. Die Beschreibung des Standard ist bei Daring Fireball zuf finden. Es gibt auch eine Seite über GitHub Flavored Markdown. Ein einfaches Markdown-Cheatsheet hilft beim Einstieg.

Heute habe ich mit markdownlint für mich vernünftig klingende Regeln für gute Markdown-Texte gefunden.

GPG-Keyserver ...

Bei mir häufen sich die Fälle von Usern, die das Problem haben, dass GPG-Keys, die auf pgp.mit.edu hochgeladen wurden, nicht mit der Welt synchronisiert werden.

Daher ist es vielleicht ratsam, gleich einen Pool von Keyservern zu benutzen.

Ein Beispiel wäre der Verbund von sks-keyservers.net (an denen pgp.mit.edu "eigentlich" auch teilnehmen sollte).

Dazu in die ~/.gnupg/gpg.conf folgenden Keyserver eintragen:

# Ganzer Pool
keyserver hkp://pool.sks-keyservers.net
# Europäischer Pool
keyserver hkp://eu.pool.sks-keyservers.net


Und anschliessend prüfen, ob es funktioniert:
gpg --search-keys dirk@deimeke.net (als Beispiel).

Mehr zu Keyservern findet sich in der Wikipedia.

Gib XMPP eine Chance ...

Ok, der Titel ist etwas reisserisch.

Seit 2015 benutze ich kein Jabber mehr, gemeint ist natürlich XMPP. Mittlerweile mehren sich aber die Menschen, die gerne via XMPP mit mir in Kontakt treten wollen. Nun gut, dann gebe ich dem ganzen noch eine Chance.

Ihr erreicht mich unter: dirk.deimeke@jabber.systemausfall.org dirk.deimeke@fsfe.org

Ich nutze die folgenden Clients:

  • iOS: ChatSecure
  • Android: Conversations
  • Linux: (Weiss noch nicht, vermutlich Kopete wegen KDE-Integration, ja, ich weiss, Gajim ist der "Platzhirsch").
  • Webbrowser: (Bin gespannt auf Eure Tipps).

Mir gefällt die Idee von Quicksy sehr gut, mal sehen, wohin das führt.

Uberspace in meiner Infrastruktur ...

Da habe ich bei der Beschreibung meiner Infrastruktur doch tatsächlich Uberspace vergessen.

Wenn es Uberspace schon gegeben hätte, bevor ich meinen eigenen root-Server betrieben habe, wäre vermutlich nie auf die Idee gekommen, das selber zu machen.

Etwas unüblich benutze ich Uberspace tatsächlich nur für E-Mails.

Zum Einen laufen dort die Mails des Monitorings auf, es ist nicht sinnvoll Monitoring-Benachrichtigungen an den Server senden zu lassen, der überwacht wird.

Zum Anderen betreibe ich dort eine "very low volume" Mailingliste.

Mailserver-Tutorials ...

Ein Bekannter von mir fragte an Silvester nach Mailserver-Tutorials, ich möchte Euch die Ausbeute nicht vorenthalten.

Das ist das beste Tutorial, das ich persönlich kenne, mein Mailsetup ist nach dem Muster einer deutlich älteren Version des Tutorials aufgebaut worden. Ich setze zwar CentOS ein, aber die Ideen von Christoph sind sehr gut.

ISPmail tutorial

Dann sind mir bei Friendica noch die folgenden Tutorials empfohlen worden. Zur Qualität kann ich leider nichts sagen.

Vielleicht hilft es ja dem Einen oder Anderen.

Weitere Empfehlungen von Lesern des Blogs

Wie ich arbeite (Infrastruktur) ...

In 2018 habe ich den Umzug in Richtung verteilter Infrastruktur abgeschlossen und alle Domains migriert.

Server

Schon vor 2018 bin ich von einem physikalischen Server bei Hetzner zu virtuellen Servern bei Netcup gewechselt. Obwohl ich jetzt mit drei virtuellen Servern weniger als für den physikalischen Server zahle, war der Preis nicht das Kriterium für den Wechsel.

Die Festplattenperformance war im Vergleich zu Bekannten, die die gleiche Serverversion eingesetzt haben, einfach unterirdisch schlecht. Und selbst der schnellere Server der Bekannten ist noch einmal in der Festplattenperformance Faktor drei langsamer als die virtuellen Server, beide setzen drehende Festplatten und keine SSDs ein.

Es sind bei mir insgesamt drei viruelle Server des Typs RS 2000 G7 (mit SAS-Platten) im Einsatz, die die folgenden Aufgaben übernehmen:

Spielwiese mit Fedora 29: Auf diesem Server läuft unter anderem Wireguard und eine Taskserver-Instanz. Zusätzlich habe ich dort einige Kommandozeilentools installiert, die man im Internet brauchen kann.

Kommunikationsserver mit CentOS 7.6, PHP 7.2 kommt aus dem Remi-Repository: CentOS setze ich vor allem deswegen ein, weil ich im Betrieb ausschliesslich (neben Solaris) mit Red Hat Enterprise Linux zu tun habe. Auf dem genannten Server läuft neben der Mail-Infrastruktur auch noch Friendica und FreshRSS.

Webserver mit CentOS 7.6, mit PHP 7.1 von Remi: Hier laufen alle Webseiten und zusätzlich noch eine Gitea-Instanz. Als Blogsoftware setze ich immer noch auf Serendipity, Wiki mache ich mit DokuWiki und eine immer grösser werdende Nextcloud-Instanz gibt es hier auch noch. Diesen Server werde ich auf absehbare Zeit erweitern müssen.

Für statische Webseiten setze ich auf die Templates von Templated oder nutze Skeleton als Basis.

Zertifikate kommen von Let's encrpyt mit AcmeFetch, ich überlege auf Certbot umzustellen.

Monitoring

Als Monitoring-Lösung kommt bei mir Bloonix zum Einsatz. Dank Jonny habe ich einen Freiaccount in dem von ihm gehosteten Angebot, wofür ich immer noch sehr dankbar bin.

Ergänzug am 3. Januar 2019: Die Benachrichtigungen des Monitorings landen bei Uberspace. Etwas unüblich benutze ich Uberspace tatsächlich nur für E-Mails. Neben den Benachrichtigungen betreibe ich im Uberspace auch eine wenig genutzte aber für mich wichtige Mailingliste.

DNS

DNS lasse ich bei INWX hosten. Das Konfigurationfrontend gefällt mir so gar nicht, aber die Preise sind in Ordnung und sie bieten nahezu alle Domains an, die es gibt.

Backup

Das Backup aller Server mache ich über eine Storage Box BX40 bei Hetzner und das funktioniert wirklich gut.

Serverbackups laufen alle 30 Minuten mit Borgbackup und Datenbankbackups alle vier Stunden mit MyDumper.

Ende des ersten Quartals des letzten Jahres hat meine Internetverbindung einen Schub bekommen, von 26 MBit/s Download und 6 Mbit/s Upload ging es auf gemessene 343 MBit/s Download und 115 MBit/s Upload. Damit brauchen wir auch kein lokales NAS mehr. Die Rechner bei uns werden ebenfalls mindestens einmal am Tag mit Borgbackup gesichert.

Spielwiesen

Wenn ich lokale Tests mache, setze ich die mit VirtualBox (derzeit in Version 6.0.0) um, insbesondere die Tests für das Buch laufen auch darüber.

Neben anderen virtuellen Maschinen habe ich immer eine Minimalinstallation der Servervarianten von Alpine, CentOS, Debian, Fedora, openSUSE und Ubuntu auf der Platte.

Ein lokales Minishift hätte ich fast vergessen.

Dinge im Internet teste ich mit Droplets auf DigitalOcean, die geben auch sehr viel an die Community zurück und bieten freies Guthaben für Open-Source-Projekte.

Über diesen Link bekommt Ihr 10 Dollar Freiguthaben, wenn Ihr selber Geld einzahlt (mindestens 25 Dollar), wird mir eine Provision gut geschrieben.

Fazit

Ich hoste sehr viel Software selber.

Klar, das kostet Zeit, bietet aber auch sehr viele Freiheiten, die ich nicht mehr missen möchte.

Wie ich arbeite (Client) ...

Um das nicht ausufern zu lassen, beschränke ich mich auf Dinge, die sich in 2018 geändert haben und selbst das ist schon lang geworden. Ich werde inhaltlich nicht auf Dienstsoftware eingehen, weil ich darauf keinen (oder nur wenig) Einfluss habe.

Hardware

Durch Dummheit habe ich in 2018 mein Android-Tablet, ein Sony Xperia Tablet Z4, in die ewigen Jagdgründe geschickt. Leider scheint das Thema Tablet bei Android durch zu sein, ich hätte mich für ein MediaPad M5 10 Pro mit Tastatur entschieden, wenn es mal in Europa verfügbar wäre. Man kann das "Pro" bis heute nicht kaufen und da Netflix noch nicht einmal in HD funktioniert, hätte mir das vermutlich auch nicht so recht gefallen.

Ich bin wahrlich kein Fan von Apple-Geräten, habe mir aber von der Firma ein iPad Pro (12.9 Zoll, 2. Generation) für Bereitschaftsfälle, die ich vorher mit meinem privaten Android Tablet gemeistert habe, geben lassen. Da muss ich gestehen, dass das mit Abstand das beste Tablet ist, was ich je benutzt habe. Das Format ist super, die Tastatur ist klasse und ich darf es auch privat nutzen. Ach, ja, einen Pencil habe ich nicht, den habe ich auch noch nicht vermisst.

Das Nokia 7 plus ist mein neues Mobiltelefon und ich bin begeistert. Wenn Android, dann etweder Google direkt oder Android One. Derzeit läuft auf dem Telefon Android 9 mit dem Dezember-Patch.

Eine neue "Smartwatch" habe ich und zwar die Amazfit Bip. Das "Smartwatch" steht in Anführungszeichen, weil es eigentlich ein Fitnesstracker mit Benachrichtigungsfunktion ist. Mehr brauche ich nicht.

Interessanterweise ist der Preis des Telefons und der "Smartwatch" zusammen günstiger als ein Mobiltelefon von Apple.

Damit sind meine "daily driver":

  • Nokia 7 plus
  • iPad Pro 12.9 Zoll, 2. Generation
  • Amazfit Bip
  • Dell Latitude E7450 mit Fedora 29 (habe ich nicht immer dabei)
  • iPhone 8 plus (wenn ich Bereitschaft habe)

Wer sich für die anderen technischen Geräte bei uns interessiert, wird auf der Technikseite im Blog fündig.

Anmerkung: Ich darf auch das Diensttelefon privat nutzen, trenne aber aber aufgrund schlechter Erfahrungen in anderen Firmen private und berufliche Erreichbarkeit, alle Kollegen haben natürlich auch meine Privatnummer (und die ist im Notfall auch nicht so schwer herauszufinden).

Software

Hier hat sich ein bisschen etwas getan. Ihr findet unten nur die Veränderungen von diesem Jahr, sonst wird es zu viel.

Web

Das Webmailprogramm ist nun Rainloop, vor allem wegen der 2-Faktor-Authentifizierung. Vorher habe ich Roundcube benutzt.

Am Fediverse nehme ich nun mit einer selbst gehosteten Friendica-Instanz teil, ich bin gewechselt von GNUsocial, weil letzteres nicht mehr weiterentwickelt wird.

Es gibt mittlerweile eine beeindruckende Menge von Instanzen mit unterschiedlicher Software und das Schöne ist, sie können sich untereinander austauschen. Wer mir dort folgen möchte: dirk@friend.d5e.org (das ist keine E-Mail-Adresse).

Statt Tiny Tiny RSS nutze ich mit wachsender Begeisterung FreshRSS, die Software ist super und der Autor sehr nett und ansprechbar. (Wer einen Account möchte, kann sich gerne bei mir melden).

Android

Hier nutze ich verstärkt F-Droid, ich muss mich einfach daran erinnern, erst dort zu schauen, bevor ich den Google Playstore bemühe.

DiCa nutze ich seit neueste als Client für Friendica, gibt es leider noch nicht bei F-Droid.

Dann noch EasyRSS als Client für FreshRSS. Wenn jemand einen mit der Google-API kompatiblen Feedreader für iOS kennt, bin ich für Hinweise dankbar.

Ich bin zurück zu K-9 Mail gewechselt und komme von Maildroid, da das lesen GPG-verschlüsselter Mails nicht mehr funktioniert hat. Allerdings lese ich immer weniger Mails auf dem Mobiltelefon, das ständig tun zu müssen, wird überschätzt.

Gadgetbridge benutze ich für die Kommunikation mit der "Smartwatch".

TI5x (Playstore) ist ein bisschen "back to the roots", der TI-59 war das erste programmierbare Gerät, das ich benutzt habe. Damit nahm alles seinen Anfang.

iOS

Auf dem Tablet kommen neben den Open-Sourcen-Tools noch folgende Bezahlsoftware zum Einsatz.

Blink ist ein sehr guter SSH-Client. Ich habe ihn ausgewählt, weil er auch Mosh kann.

Working Copy ist ein Git-Client, der für das mobile Arbeiten sehr hilfreich ist.

Textastic ist ein hervorragender Editor, der direkt mit Working Copy kommunizieren kann.

Plattformübergreifend

Passwort-Manager Bitwarden als Webclient mit 2-Faktor-Authentifizierung und nativ unter Linux, Android und iOS.

Notizen mit Joplin, Backend ist meine Nextcloud-Instanz. Kein Webclient, dafür aber nativ unter Linux, Android und iOS.

Matrix ist für mich die Entdeckung des Jahres und avanciert zu meinem primären Messenger und IRC-Client. Ich nutze Riot als Webclient und die nativen Android- und iOS-Versionen.

Rocket Chat benutze ich neu als Teamchat: schlicht, einfach und schnell.

Visual Studio Code ist neben Vim mein Haupteditor, er macht deutlich mehr Spass als Sublime Text (da habe ich sogar eine Lizenz) oder Atom.

Dieser Artikel hier wurde mit Joplin vorbereitet und mit Visual Studio Code geschrieben.

Suchmaschine

Tja, ich habe mich sogar durch Qwant von DuckDuckGo getrennt. Die Suchergebnisse sind ähnlich gut, aber die Suchmaschine wird in Europa, genauer in Frankreich betrieben.

Wie ich Taskwarrior nutze ...

taskwarrior

Wie in den Kommentaren eines anderen Blogartikels angeregt, schreibe ich hier gerne einmal zusammen, wie ich Taskwarrior benutze.

Meinen Workflow habe ich auf den Seiten von Taskwarrior beschrieben.

Hier ist eine aktualisierte Fassung:

Wo nutzt Du Taskwarrior?

Taskwarrior benutze ich nicht auf der Arbeit, weil ich dort hinter sehr strikten Proxies bin, die den Zugriff auf meinen Taskserver nicht erlauben.

Allerdings nutze ich meine privaten Taskwarrior Instanzen auch, um Aufgaben aus dem Job zu verwalten, weil ich damit alles in einer zentralen Lösung habe.

In den letzten Jahren habe ich fast alles Features von Taskwarrior einmal ausprobiert, bin aber jetzt zu einem sehr rudimentären Rumpf an Einstellungen geschrumpft.

Ich nutze immer die aktuelle Entwicklerversion.

Für welche Art Arbeit nutzt Du Taskwarrior?

Tatsächlich überwiegend für längerfristige Aufgaben, die nicht vergessen werden dürfen. Ich schreibe nicht alle Aufgaben in Taskwarrior.

Wie synchronisiert Du die Aufgaben, welche Geräte benutzt Du?

Da Taskwarrior für Android (kein offizielles Tool) oder Taskwarrior in Termux nicht die aktuelle Entwicklerversion als Basis haben, nutze ich Taskwarrior ausschliesslich auf Linux-Systemen mit einer Internetverbindung, die nicht Proxies benutzen müssen. Ich kompiliere Taskwarrior aus den Quellen selber.

Alle (meine) Taskwarrior-Instanzen synchronisieren gegen einen selbstgehosteten Taskserver. Alle Instanzen haben die gleiche Konfiguration, mit einem Unterschied, dass nur auf meinem Notebook der Eintrag "recurrence=no" fehlt.

Welchen Standard-Report benutzt Du?

Den "next"-Report ohne weitere Modifikationen.

Benutzt Du eine Standard-Methode oder auf Dich angepasst Methodik?

Aufgabenverwaltung ist sehr individuell, ich benutze einen Mix aus Methoden. Ein paar Informationen dazu finden sich in einem Vortrag, den ich vor zwei Jahren zum letzten Mal gehalten habe.

Nutzt Du irgendwelche Erweiterungen oder Hook-Scripts?

Nein.

Auf welches Feature vertraust Du am meisten?

Nahezu alle meine Aufgaben haben Zieldatum, auch wenn manche davon künstlich sind oder auch nicht von mir in der Zeit erledigt werden können.

Ich nutze das "wait"-Feature sehr häufig, um meine Aufgabenliste zu bereinigen.

Um meine Aufgaben zu organisieren, nutze ich Projekte und Subprojekte. Das hilft, mir den Überblick zu behalten und Aufgaben danach zu filtern.

Ausser "Virtual Tags" nutze ich keine weiteren Tags.

Für mich sind "Annotations" eines der wesentlichen Features, das nutze ich sehr häufig. Für angehängte URLs oder Pfade zu Dateien benutze ich Taskopen.

Ich benutze Anmerkungen auch, um meine privaten und beruflichen Ziele für einen Monat, ein Jahr und fünf Jahre zu verwalten. Die Ziele werden jeden Monat überprüft.

Welche Features nutzt Du bewusst nicht?

Ich benutze ganz selten nur Abhängigkeiten, zumeist benutze ich ein Datum, um zu steuern. Die eine Aufgabe hat ein Fälligkeitsdatum Ende der Woche und die nachfolgende Aufgabe ein Wartedatum Anfang nächster Woche.

Unglaublich, aber wahr, ich nutze Prioritäten überhaupt nicht.

Wie schaust Du Deine Aufgaben durch?

Dazu benutze ich das Review-Kommando der Taskshell.

Weitere Punkte

Ich benutze ein sehr rudimentäre Konfiguration bestehend aus einem Farbschema, Montag als Wochenstart, calendar.details=full und calendar.holidays=sparse.

Auch, wenn es keinen Sinn ergibt, nutze ich manchmal "wait:someday", um Aufgaben komplett aus dem Weg zu räumen. Man kann sie ja mit "task waiting" immer noch sehen.

Ich schreibe nicht alles in Taskwarrior. Ich habe ein Gehirn und bin gewillt es zu benutzen.

Fragen per Mail

Per Mail sind mir Fragen gestellt worden, deren Antworten ich hier gerne auch nenne.

Im Rahmen meiner Arbeit für Taskwarrior habe ich einen ganzen Haufen an Artikeln geschrieben und Vorträgen gehalten.

Beispielsweise Aufgabenverwaltung auf der Kommandozeile oder den Workshop bei Pro-Linux.

Weitere Vorträge finden sich auf meinem Speakerdeck-Account.

Verwendest du TW für private und geschäftliche Aufgaben?

Ja, allerdings auf privaten Geräten.

Setzt du bei allen Aufgaben einen Termin?

Ja, das mache ich.

Sortierst du die Aufgaben in Kategorien und/oder Projekte ein?

Ich benutze sehr intensiv Projekte und Unterprojekte, dafür aber keine Tags.

Wie priorisierst du in TW deine Aufgaben, damit diese ganz oben in deiner Liste stehen?

Da löse ich alles über das Fälligkeitsdatum. Ich blende Aufgaben auf, die nicht in den nächsten Wochen anstehen. Das führt dazu, dass ich selten mehr als eine Bildschirmseite benutzen muss.

Alternativ nutze ich "+next", um die Dringlichkeit (Urgency) zu erhöhen.

Recurring-Termine

Bei den Recurring-Terminen hatte ich in TW Problem, die Übersicht zu behalten bzw. viel Arbeit, diese ständig neu zu terminieren, wenn mal ein Termin nicht eingehalten wurde (passiert mir leider viel zu oft).

Taskwarrior ist keine Terminverwaltung ...

Hast Du Dir für den Fall einmal Dependencies angeschaut?

Wie klappt das bei dir?

Bei mir klappt es ganz gut. Ich vermisse ein paar Features, die mit Taskwarrior 3.0.0 kommen werden, da wird die Recurrence komplett überarbeitet.

Apps für das Smartphone ...

android

Angestiftet von Thomas folgt hier eine Liste der Apps, die auf meinem Smartphone installiert sind und von mir auch genutzt werden.

Ich habe einmal nachgeschaut, die Android-Kategorie meines Blogs ist relativ verwaist, die letzte App-Übersicht ist von 2011 und für das Tablet von 2017.

Vielleicht fange ich einmal damit an, dass ich neben dem vorinstallierten Playstore von Google auch noch F-Droid verwende. Wenn ich eine neue App brauche, schaue ich zuerst dort bevor ich auf den Google Playstore zugreife. Bei vergleichbarer Funktionalität greife ich lieber zu FLOSS (Free/Libre Open Source Software).

Die folgende Liste habe mit Hilfe von List My Apps erstellt. Apps von Google gebe ich nur an, wenn ich sie auch wirklich benutze.

Die Liste ist richtig lang geworden.

Medienkonsum

  • Pocket Casts ist mein Hauptmedienprogramm, es bietet gegenüber anderen Lösungen die Möglichkeit der Synchronisation des Hörstatus, um auf der Sonos, iOS oder dem Webplayer weiterhören zu können.
  • Audible, ja, Hören spielt eine grosse Rolle auf dem Handy, ich mag Hörbücher.
  • Spotify löst Audible immer stärker ab, ich höre kaum Musik, dafür viele Wortbeiträge.
  • EasyRSS synchronisiert sich gegen eine selbstgehostete FreshRSS-Instanz.
  • wallabag ist die passende App zum selbstgehosteten Wallabag-Dienst.
  • MuPDF viewer zum Anschauen von PDFs.
  • Netflix, Smart TV und Sonos nutze ich auf dem Handy sehr selten.

Internet

Zu den folgenden Tools schreibe ich nichts, die sind eindeutig.

Chat und Messaging

Ich chatte sehr wenig, was dazu führt, dass ich pro Toll gerade einmal ein oder zwei Personen habe, mit denen ich mich austausche, SMS wird übrigens auch noch genutzt.

  • Riot.im wird immer mehr zu meinem Haupt-Messenger. Ende-zu-Ende-Verschüsselung und verschiedene Brücken, unter anderem zum IRC, machen Matrix zu einer echten Empfehlung.
  • Telegram nutze ich am zweithäufigsten, würde ich aber gerne einstellen.
  • Nextcloud Talk wird hoffentlich bald auch Benachrichtigungen können.
  • Threema und Threema QR Code Plugin
  • WhatsApp brauche ich nur für eine oder zwei handvoll Gruppenchats, vielleicht schaffe ich das mal in eine VM auszulagern und dann via Matrix zu verbinden.

Organisation

  • Bring! zur "Verwaltung" der Einkäufe.
  • Bitwarden ist mein Passwortmanager.
  • Business Calendar ist für mich der beste Kalender.
  • DAVdroid synchronisiert die Kalender und Kontakte meiner Nextcloud-Instanz mit dem Handy.
  • ICSdroid tut das gleiche für ICS-Kalender (da habe ich zwei).
  • Joplin für Notizen und kurzfristige Aufgaben, synchronisiert mit der Nextcloud.
  • Nextcloud synchronisiert meine Photos mit der eigenen Nextcloud-Instanz und verwaltet einen grossen Haufen an PDFs und E-Books. E-Books lese ich nicht mit dem Handy.

Verkehr und Karten

Social Media

Ich nutze alle drei sehr selten.

Sonstiges

  • ALDI TALK - mein Handy kann zwei SIM-Karten verwalten, Aldi-Talk nutze ich in Deutschland.
  • Authenticator zur Erzeugung des zweiten Faktors.
  • Bose Connect für Firmware-Updates meiner Kopfhörer.
  • Clash Royale ist eines der zwei Spiele, das ich ab und an spiele.
  • Gadgetbridge stellt die Verbindung zu meiner Amazfit Bip ("not so smart Watch") her.
  • MeteoSwiss für den Wetter bericht in der Schweiz.
  • PostFinance - Kontostand und Bezahlen per NFC.
  • Reise & Waren enthält die Zollbestimmungen der Schweiz.
  • SecureLogin gibt den zweiten Faktor für die Firma.
  • Stocard benutze ich für Boarding Passes und eine Kundenkarte.
  • Supercard, selten genutzte Kundenkarte.
  • WeatherPro für Wetterberichte ausserhalb der Schweiz.
  • Wetter notification für Wetter auf der Amazfit Bip, spielt mit Gadgetbridge zusammen.
  • ti5x, Taschenrechner und das erste programmierbare Gerät, das ich hatte.
  • Yafi ist das zweite Spiel, ich habe einen FICS-Account seit 1996.
  • Nutze ich sehr selten: Barcode Scanner, GoPro

Docker-Hilfe ist hilfreich ...

docker Prinzipiell finde ich es ja super, dass die Docker-Kommandos eine eingebaute Hilfsfunktion haben, aber manchmal ist die Hilfe schon anders als erwartet.

Ich war mir nicht sicher, ob ich zuerst den Quell- oder Zieltag angeben muss beim Docker-Tag-Kommando:

$ docker tag --help

Usage:  docker tag IMAGE[:TAG] IMAGE[:TAG]

Tag an image into a repository

Options:
      --help   Print usage

Hotel-WLAN ...

linux Am vergangenen Wochenende durfte ich einmal mehr in einem Hotel zu Gast sein, das ein kaputt konfiguriertes WLAN hatte. Manchmal frage ich, was die Dienstleister befürchten, wenn sie den Zugang so kastrieren.

Für mich ist elementar, dass ich via SSH auf meine Server zugreifen kann, aber Port 22 ausgehend war geblockt. Das habe ich relativ schnell in den Griff bekommen, in dem ich via "Remote Console" auf einem meiner Server sslh installiert habe. sslh nimmt Verbindungen auf Port 443 (https) an und entscheidet mit dem Handshake an welchen Dienst die Verbindung "übergeben wird". Das klappt problemlos und ziemlich gut, wenn der WLAN-Administrator nicht auf Protokollebene blockt.

Zugriff geht dann via:

ssh -p 443 user@sslh-server.example.net


Die Weiterverbindung auf andere Server lässt sich dann mittels folgendem Befehl realisieren (das geht auch transparent mit der unten aufgeführten Lösung):

ssh -o ProxyJump=user@sslh-server.example.net user@ziel.example.com


Für reine SSH-Verbindungen ist das prima, aber es gibt ja zum einen noch andere Dienste (unter anderem Usenet, Protokoll nntp, Port 119), die ich auch noch nutzen möchte.

Da kommt dann das Tool sshuttle zum Einsatz. sshuttle benutzt SSH, um darüber alle tcp-Verbindungen plus DNS mittels Paketfilterregeln weiter zu leiten. Um die lokalen Regeln anzupassen wird sudo-Zugriff auf den root-Account benötigt.

sshuttle --dns --remote=user@sslh-server.example.net:443 0/0


Für mich funktioniert das und es macht "falsch" konfigurierte Netzwerke benutzbar.