Und noch einmal zum zweiten Monitor vom Tablet...

Als ich Besitzer eines so durchschnittlichen Tablets mit einem nicht funktionierenden Sensor war (mein ältester Sohn hat sein Bestes gegeben), habe ich lange darüber nachgedacht, wo ich es anpassen könnte. Gegoogelt, gegoogelt und gegoogelt (Zeit, два, Hacker Nr. 227) sowie viele weitere Rezepte mit Raumschreibtisch, iDispla und einige andere. Das einzige Problem ist, dass ich Linux habe. Nach einigem weiteren Googeln fand ich mehrere Rezepte und durch einfachen Schamanismus kam ich zu einem akzeptablen Ergebnis.

Und noch einmal zum zweiten Monitor vom Tablet...
Meine Methode ist unterhalb des Schnitts.

Sie benötigen:

Linux mit installiertem:

  • x11vnc (Ich mag ehrlich gesagt nicht alle Arten von Tigervnc und anderen)
  • adb aus dem Android-Tools-Kit

Tablet/Smart mit aktiviertem Debugging-Modus und eingestellt auf:

  • AndroidNVC (Ich habe dieses, weil es keine Werbung gibt)
  • Eine Art Bildschirmausblendungsblocker (ohne Werbung konnte ich keinen finden)
  • Jeder Autoloader (VNC und Blocker ausführen) ist optional (mehr dazu weiter unten).

in Ordnung, lass uns anfangen.

1. Holen Sie sich Modeline für xorg.conf

$ cvt 1024 768 25 # Можно и gtf, но он не всегда дает корректный modeline.

2. Bearbeiten

xorg.conf

Section "ServerLayout"
        Identifier     "Xorg Configured" 
        Screen         0  "Monitor" 0 0
        Screen         2  "Screen2" rightof "Screen0" # "Пустышка для VNC"
        Option         "Xinerama" "1"
	EndSection
	#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        # здесь все настройки оборудования, коли таковые есть
        #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
	#Dummy видеокарта
	Section "Device"
		Identifier "Device2"
		Driver "dummy"
 		VideoRam 8000
	EndSection

	#Dummy монитор
	Section "Monitor"
 		Identifier "Monitor2"
  		Modeline "1024x768@25" 23.77 1024 1056 1144 1176 768 785 789 807 # см. п. 1
	EndSection 

	#Dummy экран
	Section "Screen"
 		Identifier "Screen2"
 		Device "Device2"
 		Monitor "Monitor2"
 		DefaultDepth 24
 		SubSection "Display"
	#разрешение плашета
    		Modes      "1024x768"
    		Virtual 1024 748
    	EndSubSection
	EndSection

Wir starten das X-System neu und überprüfen es über arandr. Richten Sie den Standort und die Ausrichtung ein. Es sollte etwa so aussehen:

Und noch einmal zum zweiten Monitor vom Tablet...

Wir speichern es in einer Datei – es wird für uns nützlich sein.

3. Erstellen Sie eine Datei zum automatischen Laden in WM/DE (ich habe planshet.sh)

x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
	xrandr --addmode VIRTUAL1 1024x768 # необязательно
	xrandr --output VIRTUAL1 --mode 1024x768 # необязательно
	xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal #вот эта строка заимствована из сохраненного файла arandr

Lass uns das Prüfen:

$ xrandr |grep VIRTUAL1
        VIRTUAL1 connected 1024x768+1600+0 (normal left inverted right x axis y axis) 0mm x 0mm

Da es in IceWM kein Autostart-Verzeichnis gibt, aber eine Datei ~/.icewm/startup (die ausführbar sein sollte), fügen Sie ihr Folgendes hinzu:

sh -c /path/to/planshet.sh

4. Monitor-Blanking deaktivieren:

	xset s off
	xset s noblank
	xset -dpms

Jetzt kommt der spaßige Teil! Wie erhält man „Tap“-Koordinaten für ein Gerät ohne „Versuch und Irrtum“, indem man die Tastatur in der Konsole quält?!

Für so etwas habe ich geformt Programm. Wenn wir es über die Konsole ausführen, erhalten wir das, wonach wir suchen – die Ausgabe von Tippkoordinaten.

Und noch einmal zum zweiten Monitor vom Tablet...

6. Fügen wir das alles zu planshet.sh hinzu

Vollversion

#!/bin/bash
       x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
	xrandr --addmode VIRTUAL1 1024x768 # необязательно
	xrandr --output VIRTUAL1 --mode 1024x768 # необязательно
	xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal  #вот эта строка заимствована из сохраненного файла arandr
	xset s off
	xset s noblank
	xset -dpms
	adb tcpip 5555
	adb connect 192.168.0.14:5555
	sudo adb devices
	adb shell input tap 1000 20 # тапаем по "квадратикам" в правом верхнем углу (не знаю, как нызавется) - скрин 3
	adb shell input tap 392 138 # тапаем по AndroidVNC
	adb shell input tap 20 65 # запускаем VNC предварительно прописав адрес и порт

Und wir werden es tun

chmod +x /path/to/planshet.sh

Das ist eigentlich alles. Starten Sie den X-Server neu und erhalten Sie einen Multiscreen.

Auf meinem „kleinen“ Gerät läuft Conky.

Ein Screenshot des Doppelbildschirms ist beigefügt.

Und noch einmal zum zweiten Monitor vom Tablet...

Ich werfe auch Datenblätter darauf, wenn ich etwas modelliere.

Source: habr.com

Kommentar hinzufügen