Intex Aqua Fish mit Sailfish OS 2.0

Der Mobile World Congress 2016 in Barcelona ist vorbei und zwei Themen waren für mich besonders spannend. Zum Einen, dass das coolste Android Smartphone, Xiaomi Mi 5, aus China kommt und das Jolla bzw. Sailfish OS lebt. Samsung, LG und HTC können sich warm anziehen. Ich denke es reicht nicht sich nur über die Hardware abzugrenzen.

Zurück zum eigentlichen Thema: Sailfish OS besteht aus drei Teilen. Unter allem steht der Linux Kernel. Auf diesen setzt eine Middleware namens Mer auf. Beide stehen unter einer Opensource Lizenz. Das User Interface steht im Gegensatz dazu unter einer proprietären Lizenz. Die Bedienung zeichnet sich durch Gesten und echtes Multitasking aus. Apps werden mit QT entwickelt und Android Apps laufen ebenfalls. Der Hersteller Jolla hat sich mittlerweile in zwei Firmen geteilt. Erstere kümmert sich um die Hardware und die Zweite um die Software. Dies beinhaltet auch die Lizensierung an Dritte und somit kommen wir zu dem indischen Hersteller Intex Technologies. Dieser lizensierte als erster Hersteller im Sommer 2015 Sailfish OS und stellt auf dem MWC 2016 sein erstes Sailfish OS Smartphone vor. Getauft wurde es auf den Namen Intex Aqua Fish und die Hardware Specs entsprechen der unteren Mittelklasse. Der Preis soll bei ca. 100 EUR liegen. Die Bedienung ist trotz der relativ schwachen Hardware sehr flüssig.

Die folgenden Fotos vom Intex Aqua Fish hat Matthias Gabriel direkt auf dem MWC 2016 aufgenommen. Danke nochmal dafür!

 

 

i3 Window Manager und 4k Monitor

Aktuell nutze ich den i3 Window Manager. Dieser ist ein kleiner, praktischer Tiling WM, welcher sich an erfahrene Benutzer richtet. Diese Art von WM macht natürlich besonders mit einem 4k Monitor Sinn. Mein Problem war, dass wenn ich im Gegensatz zu dem Standard-Display meinen Rechner mit einem 4k Monitor starte, eine andere DPI Zahl verwendet werden sollte. Kurz gesagt: Rechner startet ohne 4k Display → DPI-Zahl x. Rechner startet mit 4k Display → DPI-Zahl y.

Erkennung

In einem ersten Schritt müsste erkannt werden, ob ein 4k Display angeschlossen ist. Dazu verwende ich das Programm xrandr. Im Terminal seiner Wahl gestartet, liefert es folgende Ausgabe (Ausschnitt):

[..]
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 621mm x 341mm
3840x2160 30.00*+ 25.00 24.00 29.97 23.98
2560x1440 59.95
[..]

Die Ausgabe verrät, dass ein Display mit einer Auflösung von 3840×2160 (UHD) an den Display Port (DP1 connected) und kein Display per HDMI angeschlossen ist (HDMI1 disconnected). Somit liefert das folgende Kommando die Fallunterscheidung, ob ein 4k Monitor verbunden ist:
xrandr | grep "connected primary 3840x2160"

Anpassen der DPI-Zahl

Auch hierbei hilft das wunderbare Programm xrandr. Die folgende Codezeile setzt eine DPI-Zahl von 180 für das Display, welches am Display-Port (DP1) angeschlossen ist:
xrandr --output DP1 --dpi 180

i3 Konfiguration

Ich binde in meiner i3 Konfigurationsdatei ~/.i3/config eine extra „Autostart“ Datei ein:

# autostart script
exec --no-startup-id ~/.i3/autostart

Diese führt den Code aus, welcher für die Änderung der DPI Zahl nötig ist. Es gibt nur noch ein Problem. Nach der Anpassung der DPI Zahl müsste noch ein manuelles Neuladen (Mod+R) des i3 erfolgen. Das geht natürlich auch per Kommando (i3-msg). Insgesamt sieht das Shell-Script wie folgt aus:

# change dpi
for line in `xrandr | grep "connected primary 3840x2160"`; do xrandr --output `echo $line | cut -f 1 -d ' '` --dpi 180; break; done
i3-msg -t command restart

Ich habe mich für das for-Statement entschieden, weil prinzipiell auch mehrere 4k Displays angeschlossen sein könnten. Ich unterbinde aber den mehrfachen Schleifendurchlauf per break;.