Manjaro auf dem Shift13mi

ggrosskopf

Original poster
Alpha Tester
Beta Tester
28 Januar 2022
28
Guten Morgen in die Runde :)

Hier mal eine Kleine Zusammenfassung meiner bisherigen Fundstücke und Bastelleien am Shift13mi

Ich nutze ein Verschlüsseltes Manjaro mit Gnome und Wayland, dank dem Kurzen Tastaturkabel war es einfach, das Bios zu erreichen um von einem ganz normalen Manjaro USB stick Manjaro Gnome zu installieren, Hinweis an dieser Stelle: per default installiert sich eine efi-partition und keine boot-partition. Wer klüger sein möchte als ich, installiert sich eine unverschlüsselte boot-partition, wer noch viel viel klüger ist als ich, der bekommt es irgendwie hin, grafische Passworteingabe in die Verschlüsselte Grub-partition zu bekommen, keine ahnung wie das gehen soll, alle forum-posts die ich dazu fand sahen es als unmöglich an, wäre aber mega nice. An sich hat erstmal gefühlt alles Funktioniert, Multitouch geht, tastatur geht, Touchpad der Tastatur geht, ist aber an sich nicht so unwahrscheinlich, USB geräte sind nun mal ziemlich universell :)

Danach fing ich dann an zu schauen, wie sich mein Linux von dem Ubuntu von Shiftphones unterschied und was noch fehlt.

Der aktuelle Stand ist hier zusammengefasst, noch gibts probleme und kein installationsmedium aber ich bastel mal weiter dran, probierts bitte nur aus wenn ihr wisst was ihr tut, datenverlust ist nahezu sicher

Erste und wichtigste Handlung des Tages: den Lid-switch deaktivieren damit das gerät nicht ständig in den stand-by geht weil sich die tastatur verschiebt:
Code:
HandleLidSwitch=ignore
in /etc/systemd/logind.conf
danach dann ein neustart.

On-screen keyboard findet sich in den accessibility settings von gnome

Wallpaper fand ich durch diesen Kommentar hier: https://packages.shift.eco/ubuntu/pool/main/s/shift-wallpapers/ da hab ich dann mal einfach debtap (debian to arch package) installiert, bei den anderen Paketen habe ich leider nicht verstanden was diese genau tun.
Anschliessend wurde ich dank diesem Forum-post darauf aufmerksam gemacht, welche Wunderbaren Welten der Gestensteuerung ich derzeit in Firefox verpasse, also musste ich geschwind mein Wayland so umkonfigurieren, dass es Gestensteuerung erlaubte:
Code:
MOZ_ENABLE_WAYLAND=1
in ~/.config/environment.d/envvars.conf

Dann ging es an die Bequemlichkeiten: grafischer Boot, kabelloser Boot
Dank diesem Kommentar erfuhr ich, dass die Möglichkeit dank PostmarketOS besteht, das Entschlüsselungspasswort per Touch einzugeben,
Dazu braucht es in meiner Konfiguration eine unverschlüsselte /boot und keine /boot/efi partition, damit die datei /boot/initramfs*, in die dieses osk-sdl, das in das Initramfs gesteckt wird geladen werden kann ohne dass die Festplatte entschlüsselt werden musste. Fun fact: wenn man partitionen rechts verkleinert macht man immer weniger kaputt als wenn man sie links verkleinert :) daher hab ich die 8.8GB swap partition ganz rechts in der partitionstabelle auf runde 8GB schmaler gemacht weil ich quatschkopf runde Zahlen mag, und hab dann rechts davon eine /boot partition erstellt und diese anstelle der /boot/efi partition eingehängt. Vorteil zweier Boot-partitionen: wenn man kein Kernel-upgrade und kein Treiber-upgrade macht, kann man in der umstellungsphase immer auf die original-bootpartition mit efi zurückgreifen, selbst wenn nach boot diese Partition garnicht eingehängt wird, startet das Betriebssystem. Sehr hilfreich, wenn man viel umbaut und viel im sinne der Wissenschaft kaputt macht
Also: osk-sdl aus dem AUR installiert, /etc/mkinitcpio.conf angepasst:
Code:
MODULES="i915 crc32c-intel"
BINARIES=()
#FILES="/crypto_keyfile.bin"
HOOKS="base udev autodetect modconf block keyboard keymap consolefont osk-sdl plymouth openswap resume filesystems"
das ganze dann mit
Code:
sudo mkinitcpio -P
zu den /boot/initramfs dateien bauen lassen, wichtig ist: keine referenzen zu Dateien und Ordnern ausserhalb /boot zu setzen, da die ja entschlüsselt werden müssten.
Danach dan den Boot-manager Grub umbauen:
Code:
GRUB_DEFAULT=saved
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash vt.global_cursor_default=0 udev.log_priority=3"
GRUB_CMDLINE_LINUX="cryptdevice=UUID=bf031c98-ae70-47a8-b066-f2841c870421:luks-bf031c98-ae70-47a8-b066-f2841c870421 root=/dev/mapper/luks-bf031c98-ae70-47a8-b066-f2841c870421 resume=/dev/mapper/luks-7e7e6241-fa13-4627-883e-0e5a9cbff296"
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
GRUB_GFXMODE=1920x1080
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_DISABLE_RECOVERY=true
GRUB_DISABLE_OS_PROBER=false
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"
#GRUB_BACKGROUND="/usr/share/grub/background.png"
#GRUB_THEME="/usr/share/grub/themes/manjaro/theme.txt"
GRUB_ENABLE_CRYPTODISK=y
Hier gilt natürlich zu beachten, dass die UUID (bf031c98-ae70-47a8-b066-f2841c870421:luks-bf031c98-ae70-47a8-b066-f2841c870421 und die luks devices root=/dev/mapper/luks-bf031c98-ae70-47a8-b066-f2841c870421 und resume=/dev/mapper/luks-7e7e6241-fa13-4627-883e-0e5a9cbff296" nur auf meinem System genau so sind, in eurer Config werden die anders aussehen, schaut eure Config an und baut sie um dass sie Ähnlich aussieht, aber kopier diese Werte nicht 1:1 :) auch hier esenziell wichtig: keine Dateien ausserhalb von /boot referenzieren, hier waren Background und Theme zum beispiel gesezt, die musste ich auskommentieren, damit ich Grafik hatte während ich das Passwort eingab.
danach dann
Code:
sudo update-grub
abschicken, neu starten und im bios die neue boot-config auswählen :) (hinweis: der passwort-eingabe hinweis erscheint leider erst nach dem ersten touch, wenn der Bildschirm also schwarz ist, einfach mal drauftippen :D bug-report ist schon eingereicht und wird hoffentlich bald bearbeitet, darüber hinaus ist die Tastatureingabe noch englisch, unl0kr soll laut postmarket-os-entwickler daher in zukunft osk-sdl ersetzen, davon gibt es leider aktuell kein AUR paket, schau ich mir aber mal an ob ich das gebaut bekomme)

hier hab ich einfach das gnome-manjaro theme von plymouth kopiert und die Logo-bilddatei durch ein schwarz-weisses Shift-logo mit einem leicht ausblendenden weissen Rand ersetzt, es shift-manjaro-gnome genannt, und mit einem
Code:
sudo plymouth-set-default-theme -R shift-manjaro-gnome
sollte es dann ein schönes shift-logo beim hochfahren nach der Passworteingabe zeigen.

Danach dann noch das on-screen-keyboard auch auf den login erweitern:
Code:
sudo -u gdm dbus-launch gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled true

Und weil ich faul bin noch ein
Code:
auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
in /etc/pam.d/gdm-password zwecks passworlosem Login (hab ja eh schon das verschlüsselungspasswort eingegeben, dann spaar ich mir halt das loginpasswort) das dann mit
Code:
sudo usermod -aG nopasswdlogin <username>
aktivieren.

Mit iio-sensor-proxy flackert dann die helligkeit so wie der helligkeitssensor es vermutet, aber iio-sensor-proxy findet noch keinen neigungssensor für bildschirmrotation

Ich hab noch so ein paar probleme, wie das das on screen keyboard beim löschen spinnt, bin also noch nicht fertig, freue mich aber drauf und bin jetzt schon sehr zufrieden 😀️ viel spaß beim probieren
 
Kleines Update:
Bisher nutzte ich OSK-SDL, das scheint unter PostmarketOS-Usern allerdings bereits Legacy zu sein und daher keine Updates wie Deutsches Tastaturlayout mehr zu bekommen. Eine Bootpartition für OSK-SDL hab ich auch noch für notfälle.
Neuerdings jedoch nutze ich nach viel Frickelei Unl0kr, und es ist sooo viel Besser, Dark-theme, Deutsche tastatur, die möglichkeit das Passwort anzeigen zu lassen wenn man sich vertippt hat, die Möglichkeit das Theme anzupassen, ein Shift logo bekomm ich da bestimmt auch noch unter, aber hier ein screenshot (Unl0kr kann im entwicklungsmodus screenshots und bildschirmaufnahmen machen)
breezy-dark-1920x1080.png
Leider gibt es einen Merkwürdigen Bug, wegen dem ich das nur ungerne als ersatz für osk-sdl empfehlen kann: wenn man es zu früh im Boot-prozess startet, hat man keine Input-geräte zur verfügung, Kein touch, keine Tastatur und die kommen dann auch nicht im späteren verlauf hinzu. Ein `sleep 3` (oder auch `sleep 2` also ein warten um 2-3 Sekunden "löst" das Problem (in den meisten fällen, vielleicht, vielleicht aber auch nicht, und wenn nicht, kann man das booten vergessen, zu riskant) Ich scheine der erste zu sein, der Unl0kr auf einem Nicht-PostmarketOS-Linux nutzt, und unl0kr hat auch noch nicht version 1 erreicht, bei der "Die funktionalität von OSK-SDL nachgestellt" sein soll.
 
Mittelgroßes Update zum grafischen Boot mit on-screen-keyboard für das Verschlüsselungspasswort:
Da der merkwürdige Bug upstream gefixed wurde (Danke Johannes) habe ich mich nun getraut, das Arch paket auf github zu veröffentlichen :)


Darüber hinaus gibt es dort nun auch die Variante mit Shiftphones logo und kleinerer Tastatur fürs shift13mi, da man sonst ja quer über den Bildschirm grabbeln muss um was anständiges einzugeben :D


der Alex hat mir ja gesagt, dass ich gern sachen mit Shiftphones logo veröffentlichen darf, daher hier mein erstes Paket mit shiftphones logo :)
 
  • Like
Reaktionen: amartinz
Hi ggrosskopf,

danke für den write-up. Ich habe bisher vergeblich versucht mit archlinux und gnome (wayland und x-server) das touchscreen ans laufen zu bringen. Funktionierte das mit Manjaro einfach?
 
Hi ggrosskopf,

danke für den write-up. Ich habe bisher vergeblich versucht mit archlinux und gnome (wayland und x-server) das touchscreen ans laufen zu bringen. Funktionierte das mit Manjaro einfach?
Hi,
Jo, das hat out of the Box funktioniert.

ich kenn mich nicht so gut aus aber
Code:
lsusb -tv
gibt mir zu dem D-WAV gerät, also dem Touchscreen das hier aus:
Code:
|__ Port 7: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        ID 0eef:c002 D-WAV Scientific Co., Ltd

ist das bei dir ähnlich?
 
Danke für die schnelle Rückmeldung. Ich habe es gerade ausprobiert und ja das sieht bei mir genauso aus. Ich habe auch unter input eine enstprechende maus:

Bash:
ls /dev/input/by-id/

usb-eGalax_Inc._SHIFT13mi-Touch_V00_M05-event-if00
usb-eGalax_Inc._SHIFT13mi-Touch_V00_M05-event-mouse
usb-eGalax_Inc._SHIFT13mi-Touch_V00_M05-mouse

aber wenn ich hier "cat" mache und rumtaste (wie hier beschrieben) kommt auf keinem der Geräte ein signal.

Ich habe auch versucht den Treiber von hier manuell zu installieren:

Und dannach
Code:
systemctl start eGTouchD.service
auszführen. Allerdings auch ohne erfolg.

Vielleicht probiere ich im nächsten Schritt wenn ich Zeit habe Manjaro mal aus. Ist ja ähnlich genug zu archlinux.
 
Hm ich habe gerade mal mit einem Manjaroo + Gnome USB-Stick gebootet und zumindest wenn ich direkt aus dem USB-Stick boote (mit oder ohne proprietären Treibern) scheint das touchscreen trotzdem nicht zu reagieren.
 
Ich glaube den einzigen Treiber den ich habe ist der von libinput was das ding angeht, da kann man die Events auch mit
Code:
sudo libinput debug-events
oder
Code:
sudo libinput list-devices
mal gucken ob da was beim Treiber ankommt, libinput nutze ich auch für die Bildschirmtastatur bei der Festplattenverschlüsselungseingabe. Hat es denn schon mal mit einem anderen OS funktioniert?
 
Entschuldige die späte Rückmeldung und vielen Dank für die Unterstützung. Der touchscreen hat davor mit dem vorinstallierten Ubuntu funktioniert. Ich habe jetzt noch einiges ausprobiert, auch Manjaro direkt installiert aber bisher alles ohne Erfolg. Unter libinput wird das device gelistet aber keinerlei events kommen an.