Bildschirmschoner des Raspberry Pi richtig konfigurieren

Nach zehn Minuten ohne Tastatur- und Mausaktivität aktiviert sich unter Raspbian der Bildschirmschoner. Damit wird der Bildschirminhalt zwar schwarz, der Monitor läuft aber weiter. So macht der Bildschirmschoner aber wenig Sinn und führt im Gegenteil dazu, dass ein Monitor, der ein schwarzes Bild zeigt, unbeabsichtigt länger läuft als notwendig.

In der Vergangenheit lag das daran, dass Raspbian wegen eines fehlenden Treibers nicht in der Lage war, das HDMI-Signal richtig abzuschalten. Kaum bekannt ist, dass dieses Problem seit Herbst 2016 gelöst ist:

https://github.com/raspberrypi/linux/issues/487

Aufgrund von Kompatibilitätsbedenken mit einigen Programmen (z.B. omxplayer) ist das HDMI-Blanking aber weiterhin standardmäßig nicht aktiv. Und so verschwenden bis heute unzählige Monitore, die an den Raspberry Pi angeschlossen sind, oft unnötig Strom.

Dabei lässt sich das Problem in einer Minute lösen: Starten Sie mit root-Rechten einen Editor zur Bearbeitung der Datei /boot/config.txt (z.B. mit sudo leadpad /boot/config.txt) und fügen Sie am Ende der Datei eine Zeile hinzu:

# am Ende von /boot/config.txt
...
hdmi_blanking=1

Ein Neustart und nach 10 Minuten ohne Aktivität wird der Monitor wirklich abgeschaltet!

Swift 3.1

Mit Xcode 8.3/Swift 3.1 hat Apple ein Mini-Release herausgebracht. Swift 3.1 ist zu 99,99% kompatibel zu Swift 3.0, hat aber ein paar kleine neue Features dazubekommen. Richtig Bewegung in die Swift-Entwicklung wird erst im Herbst kommen, wenn Swift 4.0 fertig wird. (Daran wird hinter den Kulissen schon eifrig gearbeitet, aber in Swift 3.1 ist das noch nicht zu sehen.)

Swift 3.1 weiterlesen

Update: Linux on Windows (WSL) für Windows 1703

Zweimal habe ich mir das Windows Subsystem for Linux (WSL), umgangssprachlich Linux on Windows schon angesehen: Das erste Mal vor knapp einem Jahr hier im Blog, ein zweites Mal im Herbst 2016 für derstandard.at. Insofern beschränke ich mich hier auf eine Zusammenfassung der Features, die sich seither geändert haben.

Update: Linux on Windows (WSL) für Windows 1703 weiterlesen

Raspberry Pi Zero W ausprobiert

Der Raspberry Pi Zero W ergänzt die Raspberry-Pi-Familie um ein weiteres Modell: Klein, stromsparend, billig und jetzt mit WLAN und Bluetooth. Im Vergleich zum bisherigen Zero-Modell hat das Modell W WLAN und Bluetooth dazu gewonnen. Im Vergleich zum aktuellen Standardmodell (Raspberry Pi 3, Modell B) hat der Zero allerdings eine langsamere Single-Core-CPU, nur 512 MByte RAM und nur einen Micro-USB-Anschluss.

Raspberry Zero W mit einer Streichholzschachtel zum Größenvergleich

Raspberry Pi Zero W ausprobiert weiterlesen

Java 9: Collections komfortabler initialisieren

Viele Programmiersprachen kennen bequeme Kurzschreibweisen zur Initialisierung von Maps, Sets etc. In Java gibt’s das leider nur für Arrays (also int [] x = {1, 2, 3}). Daran wird auch Java 9 nichts ändern, JEP186 wurde vorerst verworfen. Aber immerhin wurde stattdessen JEP269 implementiert. Dieser Erweiterungsvorschlag sieht die neue Methoden List.of, Set.of und Map.of vor, mit denen sich Collections recht komfortabel initialisieren lassen. (JEP = JDK Enhancement Proposals).

Java 9: Collections komfortabler initialisieren weiterlesen

Ubuntu: Probleme mit vollen Boot-Partitionen

Auf immer mehr meiner Ubuntu-Server-Installationen mit automatischen täglichen Updates bin ich in letzter Zeit auf das Problem voller Boot-Partitionen gestoßen. Aus historischen Gründen richtet der Ubuntu-Installer standardmäßig eine eigene Boot-Partition für die Kernel-Dateien ein, obwohl dies in den meisten Fällen vollkommen überflüssig ist. Im Boot-Verzeichnis landet bei jedem Kernel-Update die gerade neueste Kernel-Version samt diverser Zusatzdateien.

Pro Kernel-Version beträgt der Platzbedarf unter Ubuntu 16.04 ca. 50 MByte, wobei die Initrd-Datei mit ca. 36 MByte der bei weitem wichtigste Faktor ist. Ubuntu 14.04 war hier noch sparsamer, dort fand man mit ca. 25 MByte pro Kernel das Auslangen (Initrd-Datei mit 20 MByte).

Ganz egal, wie groß die Boot-Partition ist: ohne Aufräumarbeiten läuft sie früher oder später voll. Das führt dazu, dass Kernel-Updates nicht mehr (richtig) installiert werden können. Mit etwas Pech hängt Ubuntu beim nächsten Reboot. Bei einer lokalen Maschine kann man dann im Grub-Menü einen älteren Kernel auswählen, damit booten und Aufräumarbeiten durchführen. Bei einem Server ist das aber viel schwieriger.

Update 23.1.2017 15:10: Bessere Lösung mit Unattended-Upgrade::Remove-Unused-Dependencies "true" dokumentiert.

Ubuntu: Probleme mit vollen Boot-Partitionen weiterlesen

Atom als Markdown/Pandoc-Editor

Seit mehr als 20 Jahren verfasse ich nahezu alle meine Texte, Hunderte von Seiten jedes Jahr, mit dem Editor Emacs. Selten hat mich seither ein anderer Editor in Versuchung gebracht, zu wechseln. Zu den wenigen Ausnahmen zählt Atom. Der Editor ist schnell zu erlernen, hat eine moderne Oberfläche, läuft unter Linux/Windows/macOS. Außerdem ist es sehr weitreichend konfigurierbar, und das ganz ohne Emacs-Gruft und Elisp-Horror.

Dieser Beitrag stellt Atom kurz vor und zeigt seinen Einsatz als Editor für Markdown-Dokumente in der Pandoc-Variante.

Atom als Markdown/Pandoc-Editor weiterlesen