Qt 5.15.1 macht Multi-monitor kaputt + Workaround

Seid ihr zufällig Nutzer von KDE Plasma 5.19.5 sowie Frameworks 5.74.0 und habt gerade auf Qt 5.15.1 geupdated? Nun, das kann schiefgehen. Bei mir hat es das Multi-monitor-Setup erfolgreich zerlegt.

Aktueller Workaround (siehe Update): KRunner aufrufen, plasmashell --replace ausführen.

Ich bin eigentlich KDE-Nutzer, weil man sich so schön die Oberfläche einrichten kann. Solche Dinge wie verschiedene Widgets und Hintergrundbilder, Schnellstartleiste oder Fensterleiste, die nur die Fenster anzeigt, die auch gerade auf dem Monitor liegen. Ist nun leider etwas glitchy momentan, erst einmal sind die Hintergrundbilder gezielt vertauscht, die Fensterleisten zeigen wahlweise die Fenster des jeweils anderen Monitors oder alle von einem bestimmten Monitor an und um das alles in Ordnung zu bringen, darf man x mal in den Einstellungen Primärbildschirm sowie Anordnung tauschen. Dann läuft es wieder – wohlgemerkt bis zum nächsten Neustart.

Aber ich bin damit zum Glück nicht alleine. Das beruhigt wenigstens. Ich habe erst einmal ein Downgrade gemacht, so läuft es wenigstens wieder.

Wir können gespannt bleiben, wenn ich es nicht vergesse, werde ich euch hier auf dem Laufenden halten.

Update 19.09. 22:20 Uhr: hier mal der Bugreport beim Qt-Projekt.

Update 19.09. 22:22 Uhr: Darüber hinaus gibt es einen Reddit-Thread, in dem auch das Event Calendar Applet als Verursacher verdächtigt wird und wo ein Workaround Abhilfe schaffen soll.

Update 20.09. 11:40 Uhr: endlich ein handhabbarer Workaround: im o.g. Reddit-Thread wird vor allem plasmashell --replace empfohlen. Das heißt, dass man trotzdem wie gewohnt upgraden kann und KDE mit der verdrehten Reihenfolge startet. Dann aber den KRunner aufrufen (oder den Anwendungs-Starter) und plasmashell --replace als Kommando eingeben. Damit startet man die Shell neu. Theoretisch kann man das auch aus dem Terminal heraus machen, dann "hängt" die Sitzung aber im Terminal mitsamt der Fehlerausgabe, etc. Es funktioniert nicht bei jedem, aber bei mir klappt dieser Workaround. Bei mir ist übrigens durchs Downgrade die Compositor-Einstellung verloren gegangen, evtl. noch an diese in den Einstellungen denken (Anzeige und Monitor → Compositor), damit die Effekte und Schatten funktionieren.






Mozilla stellt Firefox Send und Notes by Firefox ein

Wie Mozilla offiziell bekannt gegeben hat, werden sowohl der Filesharing-Dienst Firefox Send als auch die Notiz-Funktion Notes by Firefox im Rahmen der internen Umstrukturierung von Mozilla nicht länger fortgeführt.

Firefox Send

Firefox Send war ein Filesharing-Dienst, den Mozilla im März 2019 offiziell gestartet hat. Die Nutzung von Firefox Send war kostenlos und erfolgte durch eine Ende-zu-Ende-Verschlüsselung sicher. Durch die Festlegung einer Maximal-Dauer sowie einer Maximal-Anzahl an Downloads löschten sich die Dateien nach kurzer Zeit wieder von selbst vom Mozilla-Server.

Bereits Anfang Juli hatte Mozilla Firefox Send offline genommen. Der Grund war, dass Firefox Send zunehmend dazu verwendet worden sei, „Nutzlasten für alle Arten von Cyberkriminalität zu speichern, von Lösegeld- bis hin zu Finanzkriminalität und von Banking-Trojanern bis hin zu Spyware, die gegen Menschenrechtsaktivisten eingesetzt wird“, wie ZDNet.de berichtete.

Ursprünglich sollte es sich dabei nur um eine temporäre Auszeit handeln, während Mozilla im Hintergrund an Verbesserungen arbeitet, um Firefox Send in verbesserter Form neu ins Rennen zu schicken. Dazwischen kam aber COVID-19 und die daraus resultierenden finanziellen Folgen für Mozilla sowie die angekündigte Umstrukturierung, welche die Kündigung von 250 Mitarbeitern einschließt.

Im Zuge der stattfindenden Umstrukturierung wurde nun beschlossen, Firefox Send aus Kostengründen nicht wieder online zu schalten. Die Website von Firefox Send leitet bereits auf die reguläre Mozilla-Website um.

Notes by Firefox

Notes by Firefox ist eine Browser-Erweiterung für den Desktop-Firefox sowie eine App für Android, welche es dem Nutzer erlaubt, Notizen anzulegen und diese zwischen verschiedenen Geräten zu synchronisieren.

Es dürfte die wenigsten Nutzer überraschen, dass jetzt auch für Notes by Firefox das offizielle Ende kommt, immerhin gab es nun auch schon seit 1 1/2 Jahren kein Update mehr. Mozilla wird Notes by Firefox mit dem 1. November dieses Jahres einstellen.

Nutzer, welche die Erweiterung für den Desktop-Firefox installiert haben, können diese auch über den 1. November hinaus nutzen. Es wird jedoch keinerlei Aktualisierungen mehr geben, was auch mögliche Sicherheits-Updates einschließt. Zur Neuinstallation wird Notes by Firefox ab dem 1. November nicht länger zur Verfügung stehen. Auch die Synchronsiation der Notizen wird mit dem 1. November stoppen. Bestehende Notizen können über die Erweiterung bereits exportiert werden. Mozilla wird in Kürze noch ein Update veröffentlichen, welches auf das bevorstehende Ende hinweist und womit alle Notizen mit einem Mal exportiert werden können.

Für die Android-App hat Mozilla bereits gestern ein Update veröffentlicht, welches einen entsprechenden Hinweis in der App einblendet. Notes by Firefox für Android wird ab dem 1. November gar nicht mehr funktionieren.

Der Beitrag Mozilla stellt Firefox Send und Notes by Firefox ein erschien zuerst auf soeren-hentzschel.at.






GNU Bison 3.7 bringt Gegenbeispiele

Einer der bekanntesten Nachfolger von yacc, GNU Bison, hilft ab Version 3.7 bei Schwierigkeiten in der Parser-Grammatik mit konkreten Gegenbeispielen.

Es gibt in der Informatik extrem spannende Gebiete, auf die wir täglich zurückgreifen, aber mit denen die Wenigsten direkt zu tun haben. Trotzdem ist es sehr kurzweilig, einen kleinen Einblick in diese Welt zu erhalten. Eines dieser Gebiete ermöglicht es, Informationen strukturiert und menschenleserlich darzustellen: es geht um (formale) Grammatiken. Grammatiken sind die Grundlagen für Sprachen und definieren, wie z. B. eine Rechenaufgabe, eine Konfigurationsdatei oder ein Quellcode aussehen dürfen. Während in einer Grammatik also definiert wird, wie etwas korrekt aussieht, ist das Pendant dazu der Parser, der eine Eingabe einliest, entscheiden kann, ob diese ein gültiger "Satz" in der Grammatik ist und anschließend zur Weiterverarbeitung vorbereitet. Diese Kombination aus Sprache und Parser ist im Grunde eine Schnittstelle zwischen Mensch und Maschine. Sie ermöglichte eine der entscheidendsten Produktivitätssteigerungen, da hierauf praktisch alle Programmiersprachen basieren und selbst einfachste Anwendungen wie Rechenaufgaben mit Hilfe von Grammatiken implementiert werden.

Nun sind Grammatiken ein gut erforschtes Gebiet: die Linguistik hat viel Forschung in den 1960er-Jahren reingesteckt und die Informatik hat diese automatisiert. Seit vielen Jahrzehnten gibt es sog. Parsergeneratoren, in die man einen Bauplan, die Grammatik, eingibt und welche dann einen fertigen Parser auswerfen. yacc war einer der bekanntesten Parsergeneratoren und wurde auf den meisten Systemen bereits von GNU Bison abgelöst. GNU Bison ist vor einigen Wochen in Version 3.7 erschienen und bietet eine interessante Möglichkeit, um Grammatiken zu debuggen. Ja, Grammatiken können „Bugs“ enthalten und ihr könnt euch vorstellen, dass es nicht ganz leicht ist, eine Lösung zu finden, wenn C++-Code oder eine JSON-Eingabe auf einmal nicht eingelesen werden können, weil der Parser XY einen Fehler hat.

Um es einfach zu halten, werde ich das kurz anhand des „Hello worlds“ der Parser, dem Taschenrechner, demonstrieren.

Eine Bison-Grammatik sieht in etwa so aus:

%{
#include <stdio.h>
int main(void);
int yylex(void);
void yyerror(char const *);
%}

%token ZAHL
%token ZEILENENDE

%%

start:
  %empty
| start berechnung
;

berechnung:
  strichrechnung ZEILENENDE { printf("= %d\n", $1);}
| ZEILENENDE /* ignore */
;


strichrechnung:
  punktrechnung
| strichrechnung '+' punktrechnung { $$ = $1 + $3; }
| strichrechnung '-' punktrechnung { $$ = $1 - $3; }
;

punktrechnung:
  ZAHL
| strichrechnung '*' ZAHL { $$ = $1 * $3; }
;

%%

int main(void)
{
        yyparse();
}

void yyerror(char const *s)
{
        fprintf(stderr, "Error: %s\n", s);
}

Den Lexer, der die Eingabe vorverarbeitet und entscheidet, was nun eine "ZAHL" ist, lasse ich der Einfachheit mal raus.

Interessant ist der Teil in der Mitte, da wird einerseits definiert, wie ein gültiger „Satz“ in unserer „Sprache der Rechenaufgaben (ohne Division)“ aussieht und daneben festgelegt, wie diese verarbeitet werden. So eine Bison-Grammatikdatei vermischt zwar ein wenig Syntax und Semantik, aber man will ja auch fertig werden. Die kleingeschriebenen Beizeichner heißen "Nichtterminale", sind ähnlich wie Variablen und können ausgetauscht werden. Die großgeschriebenen Bezeichner heißen "Terminale" und sind in unserem Beispiel Zahlen sowie das EOL/Enter. Eine Eingabe wäre also 2 + 5 * 2 <ENTER> bzw. 2 + 5 * 2 \n, da \n das Zeichen ist, was bei einem Enter entsteht. (Unter Linux zumindest) Das sieht visualisiert folgendermaßen aus:

Grammatik am Beispiel

Wir sehen also, dass Grammatiken nebenbei auch die Punkt- vor Strichregel implementieren. Und das ist im Grunde auch das Hauptarbeitsfeld, wenn man an Parsern baut. Und eine große Fehlerquelle. Findet ihr den Fehler in der obigen Grammatik?

Bison meckert jedenfalls über 6 Reduzier/Reduzier-Konflikte, kann also bei bestimmten Eingaben nicht entscheiden, wie die Eingabe interpretiert werden soll. Bisher musste man selber die Grammatik mit Hilfe des zugrundeliegenden Automaten debuggen, aber nun kann Bison selber konkrete Beispiele liefern, an welchen Stellen nicht entschieden werden kann.

Diese Funktion lässt sich mit der Option -Wcounterexamples aufrufen und liefert für obige Grammatik:

parse.y: warning: reduce/reduce conflict on tokens '+', '-', '*' [-Wcounterexamples]
  Example: strichrechnung '+' punktrechnung • '*' ZAHL
  First reduce derivation
    strichrechnung
    ↳ strichrechnung '+' punktrechnung
                         ↳ strichrechnung    '*' ZAHL
                           ↳ punktrechnung •
  Example: strichrechnung '+' punktrechnung • '*' ZAHL
  Second reduce derivation
    strichrechnung
    ↳ punktrechnung
      ↳ strichrechnung                       '*' ZAHL
        ↳ strichrechnung '+' punktrechnung •
parse.y: warning: reduce/reduce conflict on tokens '+', '-', '*' [-Wcounterexamples]
  Example: strichrechnung '-' punktrechnung • '*' ZAHL
  First reduce derivation
    strichrechnung
    ↳ strichrechnung '-' punktrechnung
                         ↳ strichrechnung    '*' ZAHL
                           ↳ punktrechnung •
  Example: strichrechnung '-' punktrechnung • '*' ZAHL
  Second reduce derivation
    strichrechnung
    ↳ punktrechnung
      ↳ strichrechnung                       '*' ZAHL
        ↳ strichrechnung '-' punktrechnung •

Mit geschultem Blick wird das Problem deutlich: die Operatorrangfolge, das "Punkt vor Strich", ist nicht korrekt implementiert. Bison kann also nicht entscheiden, ob "2 + 5 * 2 " nun 12 oder 20 ergeben soll, weil es entweder als (2 + 5) * 2 oder 2 + (5 * 2) interpretiert werden kann. Die Lösung sieht ohne weiteres Hintergrundwissen wie aus der Luft gegriffen aus, wäre aber, die Punktrechnung zu definieren als:

punktrechnung:
  ZAHL
| punktrechnung '*' ZAHL { $$ = $1 * $3; }
;

So kann die Grammatik eindeutig "interpretiert", also geparst werden und der Taschenrechner funktioniert.

Ihr könnt ja in den Kommentaren mal schreiben, ob euch das Thema interessiert und ob ich in weiteren Blogartikeln Aspekte und Grundlagen aus der Welt der Sprachen und Grammatiken aufbereiten soll. ;-)






Update von Thunderbird 68 auf Thunderbird 78 wird verteilt

Die MZLA Technologies Corporation hat mit der Verteilung des automatischen Updates von Thunderbird 68 auf Thunderbird 78 begonnen.

Vor gut zwei Monaten ist Thunderbird 78 erschienen. Thunderbird 78 bringt gegenüber Thunderbird 68 zahlreiche Neuerungen.

Automatische Updates von Thunderbird 68 auf Thunderbird 78 wurden bisher jedoch noch keine verteilt. Wer Thunderbird 78 nutzen wollte, musste also die neue Version von Hand über die alte Version installieren. In der Zwischenzeit hat die MZLA Technologies Corporation mehrere weitere Updates verteilt und nun damit begonnen, bestehende Installationen von Thunderbird 68 auf Thunderbird 78 zu aktualisieren.

Der Beitrag Update von Thunderbird 68 auf Thunderbird 78 wird verteilt erschien zuerst auf soeren-hentzschel.at.






Netzwerkgeschwindigkeit testen…

Vor kurzem habe ich mein kleines Heimnetzwerk erweitert und natürlich kam ich wieder mal bei der Frage an "Wie misst man jetzt eigentlich die Netzwerkgeschwindigkeit?". Klar kann man Daten über verschiedenste Protokolle übers Netzwerk schicken und hoffen, dass dabei halbwegs reale Zahlen herauskommen, aber in der Regel klappt das nicht so ganz.

Für so gut wie jede Plattform gibt es mittlerweile das Tool iperf3, was das eingangs erwähnte Problem elegant löst. Die Benutzung ist denkbar einfach, man startet hierzu iperf3 zuerst als Server auf dem Gerät was die Anfragen beantworten soll:

$ iperf3 -s

Anschließend ist ein Test in Senderichtung vom Client aus wie folgt durchführbar:

$ iperf3 -c <serveradresse>

Will man die Geschwindigkeit in Empfangsrichtung testen geht dies mittels des Parameters -R:

$ iperf3 -R -c <serveradresse>

Der Test dauert jeweils 10 Sekunden, danach bekommt man das Ergebnis zusammengefasst. Ich empfehle sowohl die Sende- als auch Empfangsrichtung zu testen, zumindest wenn es um eine kabellose Übertragung geht, da man hier stark unterschiedliche Werte bekommen kann.






Thunderbird nun offiziell mit OpenPGP

In Version Thunderbird 78.2 haben die Entwickler nun die lang erwartete integrierte OpenPGP Funktion freigeschaltet (siehe: OpenPGP in Thunderbird 78 - Der Weg ist noch weit). Die Funktionsweise ist nun weitestgehend gewährleistet, aber es fehlt noch viel Feinschliff.

Die OpenPGP Funktion ist nun standardmäßig aktiviert. Dies bedeutet man kann in direkt nach dem Erststart und der Konteneinrichtung in den Konteneinstellungen die Verschlüsselung aktivieren. Ein Gang in about:config entfällt nun.

Die Einstellungen nennen sich schlicht Ende-zu-Ende Verschlüsselung und bieten sowohl die Optionen für OpenPGP, als auch für S/MIME.

Wie man auf dem Screenshot sehen kann fehlt zumindest in meiner Installation über das Ubuntu Edge Snap noch einiges an Lokalisierungsarbeit. Über Add Key lässt je nach Bedarf ein bestehender Schlüssel importieren oder ein neuere generieren.

Bei einem neu generierten Schlüssel sind die Voreinstellungen halbwegs sinnvoll gewählt. Ob man ein Ablaufdatum in 3 Jahren haben möchte muss jeder für sich selbst entscheiden. Es spricht aus Gründen der Sicherheit einiges dafür, aber die schwierige Distribution der öffentlichen Schlüssel verhindert andererseits eine uneingeschränkte Empfehlung.

Verwalten lassen sich die Schlüssel wie gehabt im Schlüsselmanager, der noch sein altes Aussehen hat.

Die Suche nach öffentlichen Schlüssel auf dem einem Schlüsselserver funktioniert im Gegensatz zur vorherigen Version nun.

Beim Verfassen einer Nachricht zeigt ein kleiner Text und ein Symbol und rechts nun die aktivierte Verschlüsselung.

Insgesamt funktioniert OpenPGP in Thunderbird nun leidlich stabil, aber es fehlt noch viel Feinschliff. Wie auch beim Firefox stehen alte Designelemente wie der Schlüsselmanager mehr oder weniger unpassend neben neuen Elementen wie den Einstellungen. Beim Verfassen neuer Nachrichten fehlt zudem eine eindeutig und optisch starke Warnung bzw. Bestätigung ob die Nachricht nun verschlüsselt oder ungesichert raus geht.


Bilder:

Einleitungs- und Beitragsbild von mohamed Hassan via Pixabay

"






Kommentar: Defizite und Perspektiven im Open Source Ökosystem

Open Source bot mal ein komplett freies alternatives Ökosystem. Dieses Versprechen kann die Gemeinschaft immer weniger bedienen. Kern des immer größer werdenden Problems sind: Mobile, Smart Home und intelligente Assistenzsysteme.

In vielen Artikeln bemängle ich beiläufig die Defizite im Open Source Ökosystem. Gemeint mit "Open Source" sind in diesem Kontext die Entwickler- und Anwendercommunity, sowie die wenigen Firmen rund um freie Software und die von ihnen (maßgeblich) geschaffenen Produkte. Es geht nicht um freie Kerne wie bei Android oder IoT, eingebettet in ein proprietäres undurchdringbarens Dickicht, denn dann wäre macOS auch Open Source.

Grundsätzlich darf an natürlich fragen warum Defizite in manchen Bereichen überhaupt ein Problem sein sollen. Open Source und proprietäre Produkte harmonieren schließlich leidlich miteinander. Meiner Erfahrung nach verfolgen viele eingefleischte Open Source Nutzer allerdings einen ganzheitlichen Ansatz und möchten proprietäre Produkte so weit wie möglich aus ihrem Umfeld verbannen. Wenn in immer mehr Lebensbereichen nur die Wahl zwischen Verzicht und proprietären Produkten besteht könnte man dazu übergehen gleich auch die letzten Open Source Refugien zu eliminieren.

Defizite und Perspektiven

Smartphones

Android war wie schleichendes Gift! Als Apple 2007 mit dem iPhone die Handy-Welt umkrempelte das Smartphone aus der Business-Ecke holte gab es durchaus verschiedene vielversprechende Ansätze. Die ganze Welt startete quasi bei Null. Alte Ansätze wie Symbian oder Black Berry OS entwerteten sich binnen weniger Monate. Der Markt war offen für neue Player und davon gab es einige. Man erinnere an MeeGo oder PalmOS. Diese scheiterten natürlich nicht allesamt an Android sondern hatten viele weitere Begrenzungen Probleme und Fehlentscheidungen.

Linux am Desktop zeigt jedoch wie genügsam die Community sein kann. Man benötigt nicht jede App, man braucht keine 50% Marktanteil. Die Basis war da, nur sammelten sich die interessierten Open Source Entwickler im Android-Ökosystem. Da war ja irgendwie Open Source und irgendwie Linux. Dort arbeiten sie nun um die Android Restriktionen herum und versuchen krampfhaft den zunehmend proprietären Kurs von Google zu kompensieren. Von einer transparenten und offenen Mitwirkung am Entwicklungsprozess mal ganz zu schweigen. Es erinnert an OpenOffice.org und Oracle. Nur ist die Android-Community zu zerfasert und unorganisiert um den Sprung zu wagen, den damals die Office-Entwickler machten. Der Versuch von Cyanogen scheiterte kläglich, nachdem man sich einem anderen IT-Großkonzern an den Hals geschmissen hatten.

Den Mobile-Zug hat man vollständig verpasst. Ubuntu Touch und Meego sind kaum mehr als Experimentalstudien und kommen trotz des leidenschaftlichen Einsatzes der wenigen Entwickler kaum vom Fleck. Purisms Librem ist vor allem ein Beispiel für ausgezeichnete PR-Arbeit und wie verzweifelt die Community inzwischen ist.

Tablets

Tablets waren mal große Smartphones und mit diesem Konzept wurden viele Millionen Geräte verkauft. Die Absatzzahlen gehen nun aber schon länger zurück und die Firmen reagieren mit einer zunehmenden Professionalisierung der Geräte. Ein Microsoft Surface oder das iPad Pro richten sich nicht an den Sofa-Surfer. Die zugedachten Tätigkeiten werden auch immer weiter ins Produktivitätsumfeld geschoben und mit alternativen Eingabemethoden wie dem Pencil versehen.

Das ist erst einmal für Open Source eine Chance. Auf einer Surface Hardware läuft prinzipiell auch Linux. Während manche Desktops wie die GNOME Shell das Spagat zwischen Tastatur und Maus, sowie einer Finger- und Gestenbedienung ganz passabel meistern, gilt dies für viel Software im Produktivbereich - man denke nur an LibreOffice - überhaupt nicht.

Ganz abgefahren ist der Zug hier aber noch nicht. Das ist schon mal ein Unterschied zu Smartphones.

Smarte Assistenten

Smart Assistenten sind das Megathema der Gegenwart. Amazon, Apple, Google - alle spielen sie mit. Sonderlich smart sind diese Lösungen eigentlich immer noch nicht. Selbst die Produkte der Marktführer sind - um im Begriffsschema zu bleiben - ziemlich "dumm". Die Tendenz ist aber eindeutig. Waren sie ursprünglich nur in Smartphones und Autos, finden sie sich nun in Lautsprechern und weiteren Produkten. Sie sind Teil der Zukunft.

Am Beispiel der smarten Assistenten zeigt sich ein Problem in der Open Source Entwicklung. Geldmangel und Organisationsmangel. Einen smarten Assistent entwickelt kein Entwickler nebenbei in seiner Freizeit, hier reicht auch keine kleine Entwicklergruppe. Solche Organisationsformen sind aber Nukleus fast alles Open Source Projekte - bis hin zum Linux Kernel. Diese Lücke füllte zumindest ansatzweise eines der wenigen echten Open Source Unternehmen - Mozilla - mit Common Voice und Deep Speech. Zwei Projekte in den Kinderschuhen aber mit Perspektive. Jedenfalls hatten sie diese bis Mozilla aus Geldnot vor kurzem den Stecker zog. Unklar sind die Auswirkungen auf die einzige wirkliche freie AI Mycroft.

Zukunftsträchtige Unterfangen hängen oft von einigen Firmen ab, wenn diese sich zurückziehwen war es das. Das ist auf dem Desktop mit Red Hat so, am Browser mit Mozilla und eben auch bei exotischeren Projekten wie Spracherkennung. Ironie: Auch hier hängt es letztlich an Google. Nun sagt man immer, dass kein Parasit den Wirt zerfrisst von dem er lebt - aber auch das bleibt abzuwarten.

Smart Home

Smarte Assistenten und ein smartes Zuhause sind zwei Seiten der gleichen Medaille bzw. greifen oft ineinander. Genau wie bei den Assistenten spielt nahezu jede infrage kommende Firma mit. Neben Startups sind das auch etablierte Marken wie - das zwischenzeitlich ausgegliederte - Philips Hue oder gar IKEA. Als Schaltzentralen etablieren sich zunehmend Sachen wie Apples HomeKit oder Googles Home-Lösung. Die proprietären Anbieter versuchen mit zweifelhaften Maßnahmen ihre Standards für allgemeingültig zu erklären.

Open Source hat hier openHAB zu bieten. Das viel mehr als nichts, aber wie so oft ist die Einarbeitungszeit immens. Die Berichte zeigen die Möglichkeiten, aber auch den Arbeitsaufwand. Die damit gesteuerten Endgeräte sind allerdings nahezu immer proprietär. Trotzdem ist hier noch ein wenig Potenzial für die zukünftige Entwicklung enthalten.

Vernetzte Geräte

Vernetzte Geräte sind irgendwie Teil des Smart Home, aber ich möchte sie hier dennoch separat ansprechen. Ein verbreitetes Beispiel sind kabellose Multiroom-Lautsprecher. Bekannte Marken sind hier SONOS, BOSE und Teufel. Was eint sie alle? Es sind letztlich proprietäre Systeme und man ist für den langfristigen Betrieb auf den guten Willen der Hersteller angewiesen. Wenn man auf diese Systeme verzichten möchte bleiben einem ggf. noch die integrierten Protokolle von Apple- allerdings ist auch dieses nicht offen.

Bei Open Source sind hier leider nur Leerstellen. Miracast ist weitestgehend Theorie geblieben. Multiroom bedeutet bei Open Source immer noch ein zentrales raspberry oder einen Server und dann Kabel ziehen.

Viele weitere Leerstellen

Die Liste lässt sich beliebig fortführen, weil immer mehr Bereiche unsere Lebens digitalisiert werden. Offene und transparente Steuersysteme für Autos und andere Mobilitätssysteme? Smart-TVs und Smartwatches? Die ganzen aufkommenden Dienste wie das Mobile Payment? Streaming? Alles nicht mal angedacht, von Dienstleistern ohne DRM und freien Protokollen nichts in Sicht

Fazit

Abseits des eigentlichen Desktops und Notebooks spielt Open Source höchstens die Rolle eines Zulieferers. Man darf halt den Firmen den Kernel oder ein paar Protokolle liefern, aber freie Systeme gibt es nicht. Ausgehend von einem fiktiven Startdatum 2007 - also kurz bevor Smartphones das Licht der Welt erblickten, aber Linux schon quasi massentauglich war - ist das ein erheblicher Rückschritt aus Anwendersicht.

Dafür gibt es viele Gründe und man sollte sich hüten Schuldige zu benennen. Entwickler arbeiten woran sie Spaß haben und die zunehmende Komplexität des digitalen Umfelds als Herausforderung für die Open Source Entwicklungsstrukturen haben schon vor Jahren Entwickler erkannt.

Nur sollte man meiner Meinung nach die vielschichtigen Defizite und wenigen Perspektiven im Blick behalten, wenn mal wieder irgendeine Initiative Open Source auf irgendwelchen Staats-Desktops fordert oder Schulen mit Linux versorgen möchte. Angesichts der Gesamtentwicklung erscheint mir das gelegentlich als Zombiedebatte.


Bilder:
Einleitungsbild und Beitragsbild von von Pixaline via pixabay

"






Zeiterfassung mit Watson

Heute möchte ich ein Kommandozeilen-Werkzeug vorstellen, dass ich seit einigen Monaten zur Zeiterfassung benutze. Bis Ubuntu 18.04 habe ich immer das Hamster-Applet verwendet, was wirklich toll war. Unter 20.04 funktioniert dieses Applet aber nicht mehr. Deshalb habe ich mich nach Alternativen umgeschaut und bin bei Watson gelandet – ein Werkzeug für die Kommandozeile. Die Zeiterfassung mit Watson ist anders als mit dem Hamster-Applet, doch schauen wir uns zuerst die Installation an.

Installation

Watson ist ein Python-Programm und man installiert es am besten mit dem Python Paket Manager pip:

$ sudo apt install python3-pip
$ sudo pip3 install td-watson

Damit die Bedienung einfacher wird, installieren wir noch die Bash-Autovervollständigung:

$ cd /etc/bash_completion.d/
$ wget https://raw.githubusercontent.com/TailorDev/Watson/master/watson.completion

Damit die Autovervollständigung auch funktioniert, muss man den Terminal neu starten.

Bedienung von Watson

Es gibt eine Reihe von Befehlen, die einem helfen, die Zeit zu erfassen, Zusammenfassungen anzuzeigen oder einzelne Projekte zu verwalten. Die wichtigsten stelle ich kurz vor:

Zeit eines Projekts erfassen

$ watson start Projektname +Schlagwort1 +Schlagwort2

Im Hintergrund wird damit ein „Frame“ oder Zeitabschnitt angelegt für das Projekt inkl. der beiden Schlagwörter. Mit Schlagwörtern kann man z.B. die Zeit für Unterprojekte / Teilaufgaben erfassen.

Mit

$ watson stop

beende ich die Zeiterfassung für das Projekt wieder.

Andere hilfreiche Befehle

Manchmal kommt es vor, dass ich vergesse „watson stop“ auszuführen. Mit

$ watson edit

kann ich den letzten Zeitabschnitt / „Frame“ bearbeiten:

watson edit

Um das letzte Projekt neu zu starten, reicht ein:

$ watson restart

Um mir eine Zusammenfassung meiner Projekte anzuschauen, kann ich folgende Befehle benutzen:

$ watson report // letzte 7 Tage
$ watson report -m // aktueller Monat
$ watson report -f "2020-08-01" -t "2020-08-31" // Report vom 01.08. bis 31.08.2020
$ watson aggregate // zeigt eine Zusammenfassung der letzten 7 Tage an (für jeden Tag einzeln)

Weitere nützliche Befehle erhält man mit

$ watson --help
$ watson Befehl --help

Fazit

Watson ist ein wirklich einfach zu bedienendes Kommandozeilen-Werkzeug. Die Zeiterfassung mit Watson gefällt mir wirklich gut, obwohl ich das Hamster-Applet auch sehr praktisch fand. Es gibt einzelne Community-Projekte rund um Watson, die die Arbeit damit noch einmal verbessern, z.B. ein GUI und andere nette Kleinigkeiten. Ein Feature, welches meiner Meinung nach noch fehlt, ist die Möglichkeit Notizen zu einem Zeitabschnitt hinzuzufügen. Es gibt dafür einen Pull Request, aber er ist noch nicht im Projekt.

Welches Tool benutzt du zur Zeiterfassung?

Kommentar hinzufügen

Der Beitrag Zeiterfassung mit Watson erschien zuerst auf .:zefanjas:..






Thunderbird 78.2.2 veröffentlicht

Die MZLA Technologies Corporation hat mit Thunderbird 78.2.2 ein Update für seinen Open Source E-Mail-Client veröffentlicht.

Thunderbird 78.2.2 steht ab sofort zum Download bereit. Ein automatisches Update von Thunderbird 68 und älter steht weiterhin nicht zur Verfügung, dieses wird erst in den kommenden Wochen verteilt werden. Nutzer von Thunderbird 78.x erhalten die neue Version jedoch bereits als Update.

Neuerungen von Thunderbird 78.2.2

Mit dem Update hat das Team der MZLA Technologies Corporation die Möglichkeit implementiert, beim Verfassen von E-Mails die Reihenfolge der Empfänger per Drag and Drop zu verschieben.

Die Twitter-Unterstützung in der Chat-Komponente von Thunderbird ist auf Grund einer API-Änderung seitens Twitter schon länger defekt. Mit Thunderbird 78.2.2 wurde Twitter nun vollständig aus der Anwendung entfernt.

Ansonsten ist Thunderbird 78.2.2 wieder randvoll gefüllt mit Fehlerkorrekturen und Verbesserungen unter der Haube, welche sich im Detail in den Release Notes (engl.) nachlesen lassen.

Der Beitrag Thunderbird 78.2.2 veröffentlicht erschien zuerst auf soeren-hentzschel.at.






Zerofree - TRIM für Datenträger ohne TRIM

Ich muss zur Zeit relativ häufig Images von microSD-Karten anfertigen, welche hauptsächlich mit dem ext4-Dateisystem formatiert sind. Jetzt ist das insgesamt ein eher wenig angenehmer Prozess, weil das Anfertigen eines Images Zeit und Speicherplatz kostet.

Das Zeitproblem bekommt man inden Griff, indem man sich ordentliche microSD-Karten kauft (für Consumer sind SanDisk ganz nett, haben sich auch im Industriebereich für uns bewährt), sowie entsprechende microSD-Kartenleser (auch hier gibt es von SanDisk eine schöne, kleine, portable Lösung: SanDisk MobileMate USB 3.0 Reader (Datenraten >90MB/s sind damit problemlos möglich, für Sie getestet).

Das Speicherplatzproblem bekommt man halbwegs in den Griff, wenn man die Images komprimiert. Ich setze dazu gerne zstd ein, welches sich nach einigen Tests als das effizienteste Tool herausgestellt hat (sowohl was Zeitbedarf als auch Kompressionsrate anbelangt).

Leider beinhalten Images von microSD-Karten oft Daten an Stellen, wo gar keine mehr sein sollten. SSDs „trimmen“ diese Bereiche i.d.R. automatisch, microSD-Karten können das hingegen nicht.

Wer allerdings auf ein Dateisystem der ext-Familie setzt hat Glück - denn genau dafür gibt es zerofree. Kurzgesagt überschreibt zerofree effizient die Bereiche, die Nullen enthalten sollten aber es nicht tun. Dadurch fallen die anschließend angefertigten Images deutlich kleiner aus, als es sonst der Fall wäre. Die Benutzung ist denkbar einfach:

# zerofree -v /dev/sdXY

Danach kann man ein Image anfertigen, auf die genauen Parameter gehe ich hierbei explizit nicht ein:

# dd if=/dev/sdX bs=1M status=none | zstd -z -v --adapt=min=1,max=19 -o microSD.img.zst

Das war's.