LINUX auf dem GPD Pocket 3

Posted on Thu 11 July 2024 in Computer & Electronics

Ich habe ein neues Spielzeug: einen GPD Pocket 3 Mini Laptop. Aber natürlich ist der nicht zu meinem Vergnügen, nein nein – der ist ein essentielles Arbeitsmittel, wenn ich mal unterwegs bin und dennoch für Notfälle einen richtigen Computer brauche, um bedeutende Dinge zu tun denen ein Smartphone nicht gewachsen ist. Wie auch immer, ich fand das Ding sexy und wollte eins haben.

Der Kleine fühlt sich eigentlich recht solide an und ist größenmäßig wirklich putzig. Ich glaube das wird seinen Zweck erfüllen. Jedenfalls nachdem wir die Betriebssystemzumutung aus Redmond vom Gerät verbannt und durch einen freundlichen Pinguin ersetzt haben. Also frisch ans Werk.

Entfensterung

Es soll ein Debian drauf. Also schnell einen entsprechenden Debian netinst Boot Stick vorbereiten, einstecken und starten. Nach dem Einschalten dann dauerhaft F7 (FN+6) gedrückt halten, damit wir in den Bootselector kommen. Wenn das nicht klappt (wie bei mir), dann hat das halbfertig installierte Windows so einen Fast-boot eingerichtet und wir müssen erstmal einen richtigen Kaltstart erzwingen damit wir vom Stick booten können und das geht so:

Laptop starten und abwarten bis das Windows gestartet ist. Dann Shift+F10 drücken um in eine Konsole zu gelangen. Und dort geben wir dies ein:

shutdown /r /o /t 1

Entgegen meiner Erwartung führt das nicht unmittelbar zum Reboot, sondern in ein Menü in dem wir dann die Option Restart Computer wählen. Dabei drücken wir gleichzeitig die ShiftTaste, um sicherzustellen, dass es ein richtiger Neustart wird.

Sobald der Laptop neu startet, dann die Del-Taste halten, um ins BIOS zu gelangen. Dort können wir dann die Bootreihenfolge so einstellen, dass unser USB-Stick Vorrang bekommt (oder wieder F7 für den Boot-Selector). Gesagt, getan und schon begrüßt uns der Debian-Installer.

Äh – der ist ja um 90° gedreht! So mach das keinen Spaß. Grundsätzlich könnte man das vermutlich schon für den Installer irgendwie mit einem Kernel-Parameter beheben, aber für den Moment ist mir das viel zu blöd und ich nehme einfach ein headless installer image und mach die Installation remote. Um die Rotation kümmere ich mich dann im laufenden System.

Also: Debian installieren, diverse Sachen hinzuinstallieren, die ich gewöhnlich so brauche/verwende und neu starten.

Bildschirmrotation

Nun ist es an der Zeit, sich um den gedrehten Bildschirm zu kümmern. Das muss auf zwei bis drei Ebenen passieren.:

  1. Konsole – braucht man selten, aber eben doch manchmal wenn die K***e am Dampfen ist und gerade dann möchte man den Kopf nicht stundenlang um 90° nach links neigen.
  2. X11 – für die normale Arbeit.
  3. Grub – Wäre doch schön, wenn auch das GRUB Boot Menü die richtige Orientierung hätte

Ich habe dazu viel herumgegoogelt und mir diverse Sachen zusammengesucht. Am hilfreichsten waren die folgenden Quellen aus denen das meiste stammt, das ich hier mache:

Konsole

Um die Konsole zu drehen setzen wir ein paar Kernel-Parameter. Dazu editieren wir /etc/default/grub. Das muss drinstehen:

GRUB_CMDLINE_LINUX_DEFAULT="quiet fbcon=rotate:1 video=panel_orientation=right_side_up"

Hier und hier findet Ihr mehr infos dazu.

Damit die neue Einstellung auch aktiv wird müssen wir noch das tatsächliche ´grub.cfg´ File bauen:

grub-mkconfig -o /boot/grub/grub.cfg

Beim nächsten Reboot sollte die Konsole dann die richtige Orientierung haben.

X11

Hier führen verschiedene Wege nach Rom. Z.B. kann man das mit xrandr machen:

xrandr -display DSI1 --rotate right

Und das könnte man dann nach dem Login automatisch ausführen. Allerdings wirkt das eben erst nach dem Login, d.h. der Greeter (das Login-Fenster) ist noch gedreht. Auch das kann man konfigurieren, aber es ist besser das Übel an der Wurzel packen und so früh wie möglich die Rotation machen. Dazu können wir entsprechende Konfig-Schnipsel in /etc/X11/xorg.conf.d/ ablegen.

Das File soll 40-gpd-pocket3-monitor.conf heißen und dies enthalten:

# GPD Pocket 3 (modesetting)
Section "Monitor"
  Identifier "DSI-1"
  Option     "Rotate"  "right"
EndSection

# GPD Pocket 3 (xorg-video-intel)
Section "Monitor"
  Identifier "DSI1"
  Option     "Rotate"  "right"
EndSection

Vertical Tearing

Das nächste, was ich loswerden wollte ist ein Effekt, der als "Vertical tearing" bezeichnet wird. Das sind so komische senkrechte Artefakte, die beim Scrollen entstehen. Auch das lässt sich durch eine Konfig-Datei in /etc/X11/xorg.conf.d/ beheben:

Diese nennen wir 20-gpd-pocket3-device.conf:

Section "Device"
  Identifier "Device0"
  Driver     "intel"
  Option     "AccelMethod" "sna"
  Option     "TearFree"    "true"
  Option     "DRI"         "1"
EndSection

Nun einfach den X-Server neu starten und schon greifen beide Konfigurationen und der Bildschirm sieht super aus.

Touchscreen Rotation

Das letze Element, das noch nicht richtig mitspielt ist das touchscreen. Auch das muss um 90 Grad gedreht werden, damit es zur Anzeige passt. Und Ihr habt es Euch sicher schon gedacht: auch diesmal schreiben wir ein Konfig-file in /etc/X11/xorg.conf.d/:

99-touchscreen.conf soll es heißen:

Section "InputClass"
  Identifier    "calibration"
  Driver        "wacom"
  MatchProduct  "GXTP7380"
  Option        "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"
  Option        "Button2" "3"
EndSection

Grub

Daran habe ich mir die Zähne ausgebissen. Ich konnte keinen Weg finden, das Grub-Menü zu drehen – sorry. Ist aber auch nicht so schlimm.

Der ganze Rest

Und was machen wir mit all den anderen Hardware Komponenten? Nix, das lief alles problemlos ohne dass ich irgendwas besonderes tun musste:

  • Sound
  • Mikrofon
  • Wifi
  • Ethernet
  • HDMI

Fazit

Ich bin positiv überrascht. Es gab eigentlich wirklich wenige Hardware- Herausforderungen unter Linux. Da habe ich schon ganz anderes erlebt. Und das Mini-Laptop selbst ist erstaunlich gut zu gebrauchen. Klar, es ist winzig, aber selbst die Tastatur ist garnicht schlecht – natürlich mit Abstrichen bezüglich Layout, denn sonst hätten nicht alle Tasten drauf gepasst.

Würde ich täglich damit arbeiten wollen? Nein - dafür ist es mir zu klein. Aber es ist super, als Immerdabei-Maschine oder für Notfälle. Wenn mal der Hauptcomputer die Grätsche macht.