Tablet: Kernel 5.6.8+ behebt USB Problem

Wer ein Surface Tablet mit Linux hat, kennt das Problem seit Kernel 5.5.8: Das Typecover konnte man nicht abziehen, weil es nicht wieder erkannt wurde, wenn man es dransteckte.

Tablet: Kernel 5.6.8+ behebt USB Problem

Ein Kernelfix in 5.6.8+ behebt das TypeCoverproblem für Linux, wie ich heute mit 5.6.11 nachweisen konnte:

Damit dürften auch andere, verwandte USB Probleme, die u.a. im Bugtracker von Redhat aufgelaufen sind, endgültig behoben sein: https://bugzilla.redhat.com/show_bug.cgi?id=1813530

Da hatten sich sogar Leute von ArchLinux gemeldet, weil Google das so schnell im RedHat Bugtracker gefunden hatte 🙂

Wie wir diesem Kommentar entnehmen können, scheint „The Big Boss“ nicht ganz unbeteiligt gewesen zu sein:

If I assume that this issue has been appeared on 5.4.23 and fixed on 5.6.8, the candidate related commits are:

  • issue introduced by commit
    torvalds/linux@8099f58
    („USB: hub: Don’t record a connect-change event during reset-resume“)
  • and fixed by commit
    torvalds/linux@9f952e2
    („USB: hub: Fix handling of connect changes during sleep“)

Wenn ich den ersten Commit richtig interpretiere, hatte da wohl beim Abschalten jemand nicht geprüft, ob er wirklich im Sleep war. Wenn man dann natürlich Geräte abzieht und das ignoriert wird, muß man sich nicht wundern, wenn man die dann nicht mehr benutzen kann. Was ich mich aber wirklich frage ist, wieso der Fix soooooo lange gebraucht hat, bis es gefixt wurde. Das ist ja schliesslich nicht nur bei Exotenhardware wie Linux-Surface-Tablets aufgefallen.

Siehe auch: https://github.com/linux-surface/linux-surface/issues/119#issuecomment-628598029

 

Linuxtablet: NetFlix mit echten Tabletfeeling

Wer hat ein Android Tablet und nutzt da NetFlix oder irgend eine andere Video-App drauf? Vermutlich fast jeder, behaupte ich mal keck 🙂 Ok, was haben ein Linux Surface-Tablet und Android Tablet nicht gemeinsam?  😀

NetFlix mit echten Tabletfeeling

Ist ne blöde Frage, weil so fast alles. Worauf ich heute hinaus möchte ist, daß es keine native NetFlix-App gibt. Wie unterschiedet sich eine native NetFlix App zu, sagen wir mal, einem Browserfenster unter Linux in dem man ja auch NetFlix schauen kann? Nun, der Browser landet nicht sofort auf dem Startbildschirm von NetFlix. Es würde erstmal ein Fenster aufgehen, dann würde man sich einloggen und dann erst bei der Wiedergabe gäbe es vielleicht Fullscreen Video. Das unterscheidet sich von einem Android Tablet, weil da startet man NetFlix und ist „drin“.

So 100prozentig bekommen man das leider nicht hin, aber bis 99.9% würde schon gehen 🙂

Wir brauchen

Für dieses Beispiel brauchen wir einen gültigen NetFlixlogin, einen aktuellen FireFox, ein eigenes Desktopfile und ein eigenes Profil für Firefox mit dem wir spielen können 🙂 Am besten macht Ihr Euch jetzt mal eine Konsole auf ( gibt Leute die nennen das Terminal ):

Schritt 1 – Zugangsdaten besorgen

Wer seine Zugangsdaten nicht anderweitig gesichert hat(dringend empfohlen), der kann sich diese aus seinem aktuellen Firefox Profil kopieren:

Firefox starten -> Einstellungen Menü -> Sicherheit & Datenschutz -> Gespeicherte Zugangsdaten -> nach Netflix suchen.

Pro-Tip: KDE Connect ist das Tool, daß Euch diese Daten auf dem Desktopbrowser direkt auf Mobile Endgerät transportiert. Einfach auf dem Desktop „markieren & kopieren“ (CTRL-C) und auf dem verbundenen Mobilgerät „einfügen“. Fertig. So einfach ist Interkonnektivität und verschlüsselt wars auch 😉

Schritt 2 – ein neues Profil anlegen

Wir starten jetzt mal den Firefox mit der Option „-P“ aus der Konsole:

Wir sehen den Firefoxprofilemanager mit zwei Profilen, eines ist benannt: Netflix Mit „Create Profile“ legt Ihr das NetFlix Profil an. Vergesst aber nicht, daß Ihr den Haken bei „benutze ausgewähltes Profile beim Start“  weg zu machen, weil das nicht unser neues Defaultprofil werden soll, sondern ausschließlich für NetFlix da ist.

Schritt 3 – Firefox konfigurieren

Zunächst installiert in das Profil mal „NoScript“ rein und schaltet es auch ein. Dann ruft Ihr https://www.netflix.com  auf und aktiviert im Noscript alle nötigen Punkte für NetFlix. Das ist deswegen wichtig, weil der Firefox, solange Netflix offen ist, ggf. Webseitenöffnungen an sich zieht und dann würden die frei laufen, ohne das NoScript das verhindert. Nun installiert Ihr noch das „NetFlix 1080p“ Addon, damit Ihr unter Linux die HD Wiedergabe habt. Da wir nur Netflix brauchen, sind wir fast fertig.

Wichtig ist „mir“ noch, daß  in die „about:config“ geht, nach „Picture-“ sucht und die beiden „True“ Treffer vom Picture-in-Picture abschaltet. Das ist rein optional, aber sieht später besser aus im NetFlix Betrieb. Picture-in-Picture kurz PIP, ist dafür das, daß man ein Video aus der Webseite ausgliedert und es beim weiteren Studium der Webseite sehen kann. Dies kommt aber in unserem Benutzermodell schlicht nie vor, daher würde das kleine blaue Button einfach nur die Ästhetik stören 😉

Ich rate an dieser Stelle dazu, sich mal bei NetFlix einzuloggen und den DRM Support zu aktivieren. Falls was schief geht, hat man noch die Browser UI zur Hand mit der man alles ändern kann, was wir jetzt gleich ändern werden 🙂

Schritt 4 – Desktopfile anlegen

Kommen wir zum „interessanten“ Teil der Aktion, dem KISOK-Modus von Firefox. Der Kioskmodus ist genau dafür da, daß man einen PC irgendwo hinstellen kann und niemand kann an den PC ran, während der eine Webseite mit Infos anzeigt. Sehr praktisch, findet man z.B. immer in Computerläden als Suchmaschine für Produkte des Ladens.

Um den Modus zu aktivieren müssen wir Firefix mit der Option „–kiosk“ starten. Der Browser startet dann im FullScreenmodus ohne Adresszeile und Fensterrahmen. „F11“ funktioniert dann nicht, so daß man den Browser nicht in den Fenstermodus zwingen kann um Ihn zu umgehen. Das geht natürlich trotzdem, aber der Punkt interessiert heute nicht 🙂

Damit wir ein ICON zum Starten von NetFlix ( oder jedem anderen Dienst, den wir so nutzen wollen) bekommen, legen wir ein Desktopfile im Schreibtisch an:

Dateiname: ~/Schreibtisch/netflix.desktop

Da schreibt Ihr das hier rein:

[Desktop Entry]
Version=1.0
Name=NetFlix
GenericName=NetFlix
Comment=Browse the Web
Exec=firefox %u –new-instance –kiosk -P netflix https://netflix.com/browse
Icon=/home/marius/Bilder/netflix-logo.png
Terminal=false
Type=Application
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true
Categories=Network;WebBrowser;
Keywords=web;browser;internet;
X-Desktop-File-Install-Version=0.23

Wer sich ein NetFlixLogo von der NetFlix Webseite abspeichert und nach ~/Bilder/ als „netflix-logo.png“ sichert, der hat mit den obigen Einstellungen gleich das berüchtigte N auf dem Desktop prangen. Normalerweise muß man jetzt das Icon anklicken und die Ausführung als Desktopfile erlauben. Bei Gnome heißt der Punkt „Allow Launch“. Einfach draufdrücken und beim nächsten Doppelklick startet NetFlix dann im Kioskmodus im NetFlix Profil.

Weil wir ein eigenes Profil dafür haben, können wir darin alle Cookies von Netflix gespeichert lassen und erleben das, was wir auf dem Android-Tablet auch hätten. Wir starten NetFlix im Fullscreen, loggen uns einmal ein und bleiben eingeloggt, selbst wenn Ihr das Gerät über Nacht abschaltet. Wenn das nicht zu 99.99% dem Android-Tablet Erlebnis von NetFlix entspricht, weiß ich auch nicht weiter 😀

Der einzige Schönheitsfehler ist die fehlende OFFLINE Runterladerei der Filme. Wenn Euer Surface aber genug Leistung hat, könnt Ihr jeden NetFlixfilm auch so abspeichern. Das ist viel praktischer, weil man es dann auch auf einem anderen Gerät sehen kann.

Wie kommt Ihr aus dem Kioskmodus wieder raus?

Wenn Ihr Gnome als Desktop habt, so wie ich Euch das seit März 2019 predige, dann ist der Ausgang nur einen Wisch, vom linken Rand nach Rechts, weg. Und deswegen ist Gnome, der Touchdesktop bislang 😀  Mit einer Tastatur ist das natürlich viel einfacher, weil man dann nur die „Super“ Taste drücken muß, manche nennen das noch die Windowstaste, und schon seid Ihr auf der Desktop-Aktivität. Ein druck auf ALT-TAB  würde das natürlich fast auch bewerkstelligen, aber der geht tatsächlich nur mit Tastatur.

Was Ihr von da aus macht, liegt an Euch. Anders als auf Android, wird die Wiedergabe bei NetFlix nicht aufhören, wenn Ihr in eine andere App wechselt, aber das nervt mich da eigentlich schon seit Anbeginn der Zeit, also nehmen wir das Vorteil einfach mal mit 😀

Falls bei Euch auch der Doppelklick aufs Desktopicon per Touch nicht will

macht folgendes: verschiebt als Root die netflix.desktop vom Schreibtisch nach /usr/share/applications/ . Da liegen alle Programmstarter. NetFlix taucht jetzt in der Anwendungsliste auf und kann so als Favorit ins Dock eingefügt werden. Die Gnomeerweiterung „Dash to Dock“ bringt das dann als intelligentes Dock auf dem Desktop. Wobei, ein linker-Rand-nach-Rechts-Wisch, tut das dann auch 🙂

 

Linux: Surface Tablets und Laptops mit eigenem Kernel-Repo

„Du saga mal, Du hascht doch des Suuhrfaze, gibtsch da scho wos njeues pführ?“ hallte es aus dem mitfünfziger Herrn am Tisch gegenüber. Freundlich, aber bestimmt, machte Ihm mein Sitznachbar darauf aufmerksam, daß er kurz hinter Kiel wäre und folglich kaum zu verstehen sei. Dies schien den Herrn genauso wenig zu stören, wie der Umstand, daß mein Sitznachbar eher andigital veranlagt ist und es sich bei dem Gerät vielmehr um eine kurz Präsentationsleihgabe meinerseits handelte.

Nachdem die beiden Fischköpfe ( wir… vermutlich ) kurz getuschelt hatten, übersetzte eine junge Dame (Bezeichnung Anna-Luisa o7) für uns (daher auch die grobe Entschlüsselung oben) und es entstand eine schöne , wenn auch sehr kurze, Unterhaltung zum Thema: Linux auf einem Surface Pro 4.

Surface Tablets und Laptops mit eigenem Kernel-Repo

„Ja, da gibts was njeues.. ehm.. neues“ und für Euch schalte ich das Gespräch mal auf Allwissenden Erzähler um, sonst darf ich mich in Bayern gar nimmer sehen lassen. Also, Ja Leute, es gibt eine nicht mehr ganz taufrische Entwicklung, die teils sehr erfreulich, weil unheimlich praktisch ist, andererseits leider nicht so ganz funktioniert. Letzterer Teil wird derzeit noch untersucht.

Seit einige Monaten gibt es im Github einen eigenen Prebuild-Kernel für Arch, Debian und Fedora. Den richtet Ihr Euch so für Fedora ein:

  1. Das Repo hinzufügen:

sudo dnf config-manager --add-repo=https://pkg.surfacelinux.com/fedora/linux-surface.repo

2. Den Kernel  installieren:

sudo dnf install kernel-surface surface-firmware surface-secureboot
sudo dnf install --allowerasing libwacom-surface

3. Letztere Anweisung ist eher optional, falls man mit Wacom Probleme hat., was auch die Stifteingabe betrifft.

Surface rebooten, den neuen Kernel auswählen und jetzt kommt es drauf an, ob Ihr ein SP4/SB1 habt oder ein anderes Surfacegerät Euer eigen nennt, denn bei mir (SP4) bootet der Kernel zwar sauber, aber IPTS ist nicht da, was man allerdings für Touchbedienung braucht.  So bin ich kaum einen Schritt weiter als mit dem Kernel von Fedora selbst. Ein Problem an dem derzeit gearbeitet wird.

Und da ist auch schon die Lösung … ( sowas von genial den Artikel schon Tage im Voraus zu schreiben 😀 ) … dem mangelnden Touchsupport kann man so begegnen:

[root@surface]# rmmod ipts
[root@surface]# insmod /lib/modules/5.5.8-1.surface.fc30.x86_64/kernel/drivers/input/touchscreen/ipts/ipts.ko.xz singletouch=y

Was man dann so verewigt:

echo „options ipts singletouch=y“ > /etc/modprobe.d/ipts.conf

Man muß aber wissen, das dann der Stiftsupport abgeschaltet ist. Außerdem ist im 5.5er Kernel die Multitouch-Support komischerweise abgeschaltet, wer das braucht, muß den LTS Kernel 4.19 installieren. Ob das bei einem aktuellen Fedora 30/31/32 eine gute Idee ist, mag ich nicht entscheiden wollen. Allerdings hatte der 5.3er noch Multitouch dabei. Da frage ich mich jetzt, wieso das abgeschaltet wurde.

Weniger Energieverbrauch .. vielleicht

Eine andere Sache, die noch untersucht werden muß, ist der anscheinend geringere Stromverbrauch des 5.5.8 Kernels auf dem Surface Pro 4. zunächst sah es eher nach einem Batteryauslesebug aus, weil das Gerät lange auf 100% blieb, aber mittlerweile könnnte auch ein leichter Einspareffekt vorhanden sein. Ich hab das SP4 noch nicht lange genug im Referenzkernel laufen lassen, um da einen Vergleich zu haben. Ich schau nachher mal.

Kameras gehen immer noch nicht

Tja, schlechte Nachrichten für die NSA, die Kameras der Surface Pro 4+ funktionieren immer noch nicht unter Linux, was an sich jetzt schade für reguläre Kameranutzer ist. Dafür soll das Wifi jetzt im 5G Betrieb stabiler sein, was ja auch nicht ganz unpraktisch ist.

Die Sache mit dem Secure Boot

Nachdem ersten Boot, kommt im Bootprozess eine mördermäßig wichtige Einblendung, die einem bei der Installation auch mitgeteilt wird, allerdings steht im Installationshinweis, daß man, WENN MAN danach gefragt wird, ein Password eingeben soll um den signierten Kernel, bzw. dessen Signatur, ins Bios zu bekommen um dann Secure Boot nutzen können. Tja, was soll ich sagen, die Abfrage kam so nicht, denn dazu muß man während ein Timer runterzählt auf eine Taste drücken, sonst wird man auch nicht nach dem Passwort gefragt 🙂

Da ich da noch unsignierte Kernels zum Testen liegen habe, kann ich SecureBoot eh nicht einschalten, insofern ist mir das auch egal 😉 Wenn der neue Kernel natürlich dauerhaft funktioniert, dann kann man das später immer noch mit Hilfe des mokutil erledigen.

Der TypeCover Bug

Zwar prellt das TypeCover nicht mehr, aber dafür funktioniert es auch nicht mehr, wenn man es abzieht und wieder dran steckt. Was ein Problem darstellt, da man das Surface Pro 4 neu booten muß.

Ihr seht, da werden noch einige Fixe nötig werden, bis das stabil läuft.