Font-Darstellung in Java-Programmen

Da hat man nun seit Ewigkeiten diverse Verbesserungen der Darstellung von Schrift wie Hinting und Antialiasing, daß das Ganze nicht aussieht wie Bitmap-Fonts auf dem Amiga, dennoch wirken sie sich in Java-Programmen nicht aus, selbst, wenn es in diesen zusätzlich aktiviert werden kann und worden ist.

Ein Beispiel ist der bekannte TV-Browser. Wenigstens betrifft es nicht das Innere des Hauptfensters, also den Programminhalt der Sender, wohl aber den Kopf und auch “about”:

ohne Hinting

Es gibt jedoch Möglichkeiten, auch in Java-Programmen ein halbwegs anständiges Font-Rendering zu erhalten. Direkt verglichen:

mit Hinting

(Btw., falls jemand auf die Idee kommen sollte, nein, das hat absolut nichts mit beta zu tun.)

  • Möglichkeit auf Userebene:
    1
    
    $ nano ~/.xprofile

    Hinzufügen:

    Xft/Hinting 1
    Xft/HintStyle "hintslight"
    Xft/Antialias 1
    Xft/RGBA "rgb"
  • Möglichkeit auf Systemebene mit einem xsettings-Daemon:
    1
    
    # nano /etc/environment

    Hinzufügen:

    _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting'

    Für “setting” trägt man einen der folgenden Werte ein:

    off, false, defaultkein Antialiasing
    onvolles Antialiasing
    gaspin TTF integriertes Hinting
    lcd, lcd_hrgbAntialiasing für viele gebräuchliche LCDs
    lcd_hbgr, lcd_vrgb, lcd_vbgralternatives AA-Setting für LCDs

Relogin ist nötig. Ich selbst habe sowohl User als auch System getestet (kein Unterschied in der Ausgabe) und mich für den systemweiten Eintrag und gasp entschieden.

enlightenment: suid setzen

Nachdem in einem Forum-Thread bezeichnenderweise auch nach anderthalb Tagen statt einer Lösung für

“Enlightenment cannot successfully start the enlightenment_system service since it can’t become group root. Missing setuid bit?”

nur ein Link zu einem Bugreport (den ich auch längst gefunden gehabt habe) gepostet worden ist, habe ich mich unter dem Bugreport erbarmt. Das Problem an sich ist nicht neu (ist bei mir damals mit e17, e18, e19 auf Lubuntu oder siduction allerdings nicht aufgetreten), Lösungen in anderen Foren sind jedoch auch nicht wirklich existent. Eine vielleicht, freilich noch vor dem usrmerge, damit mit anderen Pfaden.

1
2
# chmod 4755 /usr/lib/x86_64-linux-gnu/enlightenment/utils/enlightenment_sys
# chmod 4755 /usr/lib/x86_64-linux-gnu/enlightenment/utils/enlightenment_system

Der launchpad.net-Editor ist im übrigen ein Grauen. Weder gibt es ersichtlich Codeblocks noch Link-Syntax (vielleicht wenigstens BBCode, habe ich aber nicht auch noch ausprobieren wollen, denn Vorschau und Editieren sind ebenfalls nicht möglich, dafür aber sinnfreie nicht verhinderbare harte Zeilenumbrüche trotz wesentlich breiterem Editor-Fenster). Paßt damit bestens zu Canonical/Ubuntu.

LXQt: Shortcuts ohne Funktion

Wenn Tastenkombinationen keine Reaktion mehr zeigen, merkt man erstmal, wie sehr man selbst darauf baut. LXQt-Shortcuts funktionieren nicht mehr (wenn nicht mal über ctrl+alt+t ein Terminal gestartet werden kann, was ich hier ständig mache, ist das schon hart, hrr).

Sobald der Desktop aufgebaut ist, erscheint folgende Message:

lxqt-panel
Removable media/devices manager: Global shortcut 'X86Eject' cannot be registered

Ich untersuche das Problem seit Freitag (da ist es erstmals aufgetreten, testing ist in EndeavourOS, also arch-based, prinzipiell aktiviert). Es ist irrelevant, welcher Window Manager genutzt wird (openbox, xfwm4). Zwischenzeitlich habe ich schon angenommen gehabt, ich hätte die Ursache gefunden bzw. zumindest einen Workaround.

lxqt-globalkeysd kann nicht gestartet werden. Dies kann man sehen unter:

LXQt Configuration Center → Session Settings → Basic Settings → Global Keyboard Shortcuts

An der Stelle kann man den Dienst starten, freilich überlebt dieser keinen Reboot oder Relogin.

Unter

LXQt Configuration Center → Autostart → Application Autostart → LXQt Autostart

habe ich “lxqt-globalkeysd” mit “Wait for system tray” als Workaround hinzugefügt. Hilft allerdings nicht zuverlässig. Im Moment funktioniert’s, was nicht daran liegen muß.

Zum Thema kann man fast nichts finden. Vor 5 Jahren ist das Fehlerbild schon mal aufgetreten (nicht bei mir, ich habe damals LXDE genutzt). Damals soll geholfen haben:

PCmanFM → Preferences → Volume → disable “Mount removable media automatically whe they are inserted” und disable “Show available options for removable media when they inserted”

Ist hier aber auch nicht einwandfrei reproduzierbar.

Ventoy: grafisches Frontend

Bisher ist ventoy unter Linux nur in einer Shell nutzbar. Das ist auch ausreichend und hat damit durchaus einen nerdigen Charme. ;-) Mit Version 1.0.52 wird nun auch ein grafisches Frontend, das der Windows-Version sowohl in Funktionen als auch Aussehen gleicht (Screenshot auf LXQt/Openbox/Mikachu in einer VM), mitgeliefert.

Btw., auch, wenn ich nicht mehr Ventoy: Verdacht auf Malware #2 aktualisiere, ich lasse selbstverständlich weiterhin jede Linux- und Windows-Version scannen. Sollte sich wieder etwas diesbzgl. ereignen (nur dieser malaysische MaxSecure, quasi nebenan, 1/62, meckert für die Windows-Version nach wie vor), wird dies kundgetan.

arch/LXQt: Gruppierte Fenster im Panel nicht waehlbar

Laufen mehrere Instanzen eines Programmes, werden deren Fenster in einem Panel gruppiert. Das bedeutet, in bspw. LXQt-Panel erscheint nur 1 Tab für eine Programmgruppe, geht man darauf, klappt das Panel vertikal bzw. horizontal (je nach Anordnung des Panels) auf, man kann das gewünschte Fenster anklicken.

Man spart damit also massiv Platz. Hat man z.B. Thunderbird geöffnet, will eine eMail schreiben, sind das schon mal 2 Fenster, im Tb-Tab gruppiert. Benötigt man für die eMail Informationen aus dem ebenfalls geöffneten Filemanager oder Browser, wechselt man dorthin und wieder zurück.

Seit Mitte der Woche sind gruppierte Fenster aber nicht mehr klickbar. Der jeweilige Tab öffnet sich zwar (es fällt schon auf, daß man dazu überhaupt klicken muß, denn eigentlich ist es ein Mouseover), man sieht die einzelnen Einträge, beim Klick darauf schließt sich aber sofort die Auswahl.

Mit ctrl+tab kann man zwar die Fenster weiterhin wechseln, sind jedoch viele geöffnet, braucht das länger.

Eine Falschkonfiguration in z.B. panel.conf ist es nicht, ich nehm’s vorweg, nicht das Panel selbst ist die Ursache.

Ich habe diverse Bugtracker als RSS-Feeds aboniert. In dem von arch findet sich tatsächlich FS#70386 – LXQt panel doesn’t allow to select any grouped window von gestern Nachmittag. Offensichtlich sind kürzliche Änderungen in bestimmten qt5-Paketen in arch ursächlich.

Als Workaround kann man die jeweils letzte Version ohne den Namenszusatz “kde” installieren. Hat man diese noch in “/var/cache/pacman/pkg/” liegen, kopiert man diese einfacherweise in ein leeres Verzeichnis, um von dort mit “pacman -U *” zu installieren. Wer sein System sauber hält, hat die freilich nicht mehr und zieht sie sich von archive.archlinux.org:

1
2
3
4
5
6
7
mkdir -p ~/Downloads/arch/oldver/qt5/
cd ~/Downloads/arch/oldver/qt5/
wget https://archive.archlinux.org/packages/q/qt5-base/qt5-base-5.15.2-5-x86_64.pkg.tar.zst
wget https://archive.archlinux.org/packages/q/qt5-declarative/qt5-declarative-5.15.2-1-x86_64.pkg.tar.zst
wget https://archive.archlinux.org/packages/q/qt5-svg/qt5-svg-5.15.2-2-x86_64.pkg.tar.zst
wget https://archive.archlinux.org/packages/q/qt5-wayland/qt5-wayland-5.15.2-1-x86_64.pkg.tar.zst
yay -U *

Es erfolgt eine Warnung, daß gedowngradet werden soll.

Um im nächsten Update-Prozeß diese 4 Pakete nicht gleich wieder zu ersetzen, muß man sie natürlich pinnen. In “/etc/pacman.conf” erweitert man die entsprechende Zeile auf “IgnorePkg = qt5-base qt5-declarative qt5-svg qt5-wayland”.

Vergessen kann man das Ganze nicht, denn z.B. “yay -Syyu” zeigt “ignoring package upgrade” an. Sind dann gefixte Pakete verfügbar, kommentiert man die IgnorePkg-Zeile aus oder entfernt die Paketnamen.

·

Update: Revert the revert, the affected applications have been fixed ;-)

Wenn qt5-base-5.15.2+kde+r171-3 in Abhängigkeit der Aktualität des jeweiligen Mirrors angeboten wird, kann und sollte das Pinning wieder aufgehoben werden.

Blaulichtfilter, Software-Loesung mit redshift

Blau macht glücklich, Blau bedeutet Hoffnung. Aber wo viel Licht, da viel Schatten. ;-) Man soll nachts nach stundenlanger Arbeit am Rechner weniger gut einschlafen können, man sei noch auf Tagmodus, und das, obwohl die Augen schneller ermüden. Wobei das natürlich auch eine Frage des sehr viel höheren Kontrasts gegenüber meist abgedunkeltem Raum ist.

Sei’s drum, jedenfalls gibt es neuere Monitore mit Blaulichtfilter (manchmal als smartLight vermarktet), auch manche Smartphone-Displays besitzen derartiges, mehr oder eher weniger brauchbar (dort, wo ich es ausprobiert habe, würde ich es ausschalten). Das bedeutet nicht, es kommt kein Blau mehr durch, man sieht nur noch Rot. =:-)

Wer keinen solchen Monitor besitzt, wird nicht über OSD ständig die Farbtemperatur (wer vor heutiger Allerweltsknipserei mit Grundlagenwissen fotografiert hat, kennt das mit Tageslichtfilm und Kunstlichtfilm, aber selbst bei s/w mit Vorsatzfiltern) ändern wollen, es gibt Software-Lösungen wie redshift (das ist kein neues Programm, aber manche scheinen Schwierigkeiten mit der Einrichtung zu haben). In Abhängigkeit des Standorts und der Uhrzeit wird eben jene Farbtemperatur über den XServer mit xrandr angepaßt.

Die Installation ist simpel:
arch-basiert:

1
# pacman -S redshift redshift-gtk

debian-basiert:

1
# apt install redshift redshift-gtk

Es ist auch ohne das grafische Frontend möglich. Zur Bestimmung des Standorts kann man geoclue installieren, nur dafür ist es aber keineswegs nötig. Sinnvollerweise erstellt man einfach eine Konfigurationsdatei ” ~/.config/redshift.conf” mit entsprechendem Inhalt. Auf der Site des Projekts kann man ein Muster ziehen und an die eigenen Verhältnisse anpassen. Das Ganze ist wirklich sehr einfach, gut dokumentiert (ich entferne im folgenden File diese Zeilen auch nicht, füge im Gegenteil hilfreich sein könnende Sites ein).

Die eigenen Koordinaten, also den Breiten- und Längengrad, kann man bspw. über dateandtime.info erfahren. Für Leipzig sind dies Breitengrad 51°20.3772′ N, Längengrad 12°22.2774′ O. Einzutragen sind

lat=51.20
lon=12.22

Die zu wechselnde Farbtemperatur in Kelvin kann man sacht wählen

temp-day=6500
temp-night=6200

oder stärker, so man dies will.

Sinnvoll ist der Eintrag

transition=1

für einen fließenden Übergang.

Soll nur ein bestimmter Screen betroffen sein, ist dieser anzugeben, anderenfalls kann man die Zeile auch mit einem Semikolon auskommentieren.

Speichern, redshift-gtk starten! Das ist über Icon im Startmenu möglich, aber natürlich auch in einem Terminal, z.B. zum Testen. Über das Glühlampen-Icon kann man redshift auch schnell zu oder abschalten und auch in den Autostart eintragen.

Kleiner Hinweis noch, in einer VM funktioniert das nicht (das Programm als solches schon), das müßte man im Host durchführen.

Nachfolgend eine “~/.config/redshift.conf”:

Read more “Blaulichtfilter, Software-Loesung mit redshift”

Bodhi Linux…Gruss aus der Gruft

Möglicherweise denkt der Eine oder Andere, ich hätte einen uralten Bodhi-Linux-Blogpost ‘rausgekramt. Tatsächlich ist nach langem Siechtum und einem dortigem Fahnehochhalten-Artikel letzten Juni heute Bodhi Linux 5.1.0 released worden.

Symptomatisch: je weniger Manpower, desto mehr Versionen.

Bodhi Linux setzt bekanntlich auf Ubuntu Long Term Sleeping auf, hier also 18.04. Wenn dessen offizielle Flavors wie Lubuntu EoS erreicht haben, also in 1 Jahr, ist automatisch Schluß mit x86_32. Wozu dann jetzt noch eine solche Bodhi-Version?

Read more “Bodhi Linux…Gruss aus der Gruft”

LibreOffice: Workaround fuer c&p

Es ist schon ein Kreuz, wenn Essentials nicht funktionieren, vor allem nicht mehr oder schon wieder nicht mehr. Eigentlich soll das Problem des verlorenen copy & paste im Zuge eines weiteren mit LibreOffice 6.2.1.1 gefixt worden sein, ist es aber auch mit .2, das um eine KW Verspätung erschienen ist und nach Release Plan zur Final erklärt werden soll, nicht.

Ursache ist ein dysfunktionales Zusammenspiel mit Qt5 (sprich Plasma und LXQt), d.h. c&p zwischen LibO und Qt-basierten Programmen wie bspw. featherpad ist weitgehend nicht möglich (aber z.B. mit dem Gtk-basierten leafpad, beide Richtungen, wer’s ausprobieren will). Als das hier erstmals mit den 6.2.0-RCs aufgetreten ist, habe ich in etlichen Richtungen gesucht, Dailies getestet, auch Clipboard-Manager gewechselt.

Bis das irgendwann mal tatsächlich korrigiert wird, kann man sich mit einem (unschönen) Workaround behelfen:

1
OOO_FORCE_DESKTOP=gnome /opt/libreoffice6.2/program/soffice &

Sollte man nicht das TDF-Original, sondern Pakete aus den Repositories der Distributionen oder Fremdquellen verwenden, sobald verfügbar und dahingehend ungefixt, wäre der Pfad natürlich ein anderer.

systemd-240, haengendes Plasma

Derzeit gibt es Probleme mit systemd-240-1 in sid(uction). Sie äußern sich in hängendem Plasma (sprich KDE), aber auch, wenn man dieses DE nicht in Gänze verwendet, sondern nur diverse Qt-Programme mit einem anderen DE (hier LXQt), Krusader bspw. Hier hat es sich so geäußert, daß Krusader an sich zwar augenscheinlich gelaufen ist, man aber darüber ein simples .zip-Archiv nicht hat entpacken können (zuerst nimmt man natürlich an, dieses sei korrupt).

Aber auch Java-Programme wie TV-Browser (ohnehin schon äußerst mädchenhaft bei der Akzeptanz der verwendeten JRE-Version – ich frage mich, wann man dort endlich auf 11 springt oder zumindest akzeptiert) brechen mit einem Wust an Errors ab.

Erster Workaround ist das Zurückgehen auf systemd=239-5.6 plus dessen Abhängigkeiten und das Setzen von “apt-mark hold” dieser Pakete gewesen. Funktioniert, ist jedoch nicht nötig, es genügt das Erzeugen eines .conf-Files

1
echo "* hard nofile 524288" | sudo tee -a /etc/security/limits.d/systemd.conf

mit folgendem Reboot. Hat man sudo nicht installiert, dann logischerweise ohne in einer root-Shell oder tty oder klassisch mit einem Editor.

Update 2018-12-28: Da ja nun systemd-240-2 auf den Mirrors liegt – es soll beschriebene Probleme beheben (systemd.conf könnte man theoretisch wieder entfernen, ich laß es einstweilen).

Ein komplettes d-u ist derzeit durch die qt5-transition nicht möglich, aber man kann systemd auch durch reinstall updaten.

Update 2019-01-05: In antergos, ARCH-basiert, ist es übrigens immer noch systemd 239.370-1, mit 240.0-1 aus testing werden weitere Probleme berichtet (bspw. chromium mit D-Bus-Errors). 240.0-2 gibt es bereits, jedoch noch in testing (und hier installiert).

Lubuntu 18.10 Cosmic Cuttlefish torrents

Nach langer Zeit der Stagnation wechselt Lubuntu mit der heute erscheinenden 18.10 auf eine andere Desktop-Umgebung, dem modernen LXQt. Für Hintergründe und auch eine Warnung sei auf den Artikel Lubuntu mit LXQt verwiesen.

Torrents für Lubuntu Cosmic Cuttlefish:

Mit Cosmic bietet auch Lubuntu als letztes Derivat keine Alternate Images mehr an.