Et encore une fois sur le deuxième moniteur de la tablette...

M'étant retrouvé propriétaire d'une tablette aussi moyenne avec un capteur qui ne fonctionnait pas (mon fils aîné a fait de son mieux), j'ai longtemps réfléchi à l'endroit où l'adapter. Googlé, googlé et googlé (temps, два, Hacker n°227), ainsi que de nombreuses autres recettes mettant en vedette Spacedesk, iDispla et quelques autres. Le seul problème est que j'ai Linux. Après quelques recherches supplémentaires sur Google, j'ai trouvé plusieurs recettes et grâce à un simple chamanisme, j'ai obtenu un résultat acceptable.

Et encore une fois sur le deuxième moniteur de la tablette...
Ma méthode est en dessous de la coupe.

Vous aurez besoin de:

Linux avec installé :

  • x11vnc (je n'aime franchement pas toutes sortes de TigerVNC et autres)
  • adb à partir du kit d'outils Android

Tablette/intelligente avec le mode débogage activé et défini sur :

  • AndroidNVC (J'ai celui-ci, car il n'y a pas de publicité)
  • Une sorte de bloqueur d’écran (je n’en ai pas trouvé sans publicité)
  • Tout chargeur automatique (exécuter VNC et bloqueur) est facultatif (plus d'informations ci-dessous).

OK commençons.

1. Obtenez Modeline pour xorg.conf

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

2. Édition

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

Nous redémarrons le X-sys et vérifions via arandr. Définissez l'emplacement et l'orientation. Cela devrait ressembler à ceci :

Et encore une fois sur le deuxième moniteur de la tablette...

Nous l'enregistrons dans un fichier - cela nous sera utile.

3. Créez un fichier pour le chargement automatique dans WM/DE (j'ai 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

Chèque:

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

Puisqu'il n'y a pas de répertoire de démarrage automatique dans IceWM, mais qu'il existe un fichier ~/.icewm/startup (qui devrait être exécutable), ajoutez-y ce qui suit :

sh -c /path/to/planshet.sh

4. Désactivez la suppression du moniteur :

	xset s off
	xset s noblank
	xset -dpms

Vient maintenant la partie amusante ! Comment obtenir les coordonnées « tap » d'un appareil sans la « méthode d'essais et d'erreurs » en torturant le clavier de la console ?!

Pour le bien d'une telle chose, j'ai sculpté programme. Si nous l'exécutons depuis la console, nous obtiendrons ce que nous recherchons : la sortie des coordonnées du tap.

Et encore une fois sur le deuxième moniteur de la tablette...

6. Ajoutons tout cela à planshet.sh

Version complète

#!/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 предварительно прописав адрес и порт

Et nous le ferons

chmod +x /path/to/planshet.sh

C'est tout, en fait. Redémarrez le serveur X et obtenez un multi-écran.

J'ai Conky qui tourne sur mon "petit".

Une capture d'écran du double écran est jointe.

Et encore une fois sur le deuxième moniteur de la tablette...

J'y jette également des fiches techniques lorsque je modélise quelque chose.

Source: habr.com

Ajouter un commentaire