No es posible controlar monitores individuales con xset (y X11 en realidad)
Como sugiere el título, no es posible por razones de cómo xset
se construye y debido a las funciones X11 que usa. Si miramos el código fuente, las xset
llamadas DPMSForceLevel(dpy,DPMSModeSuspend)
( línea 557 ) y la variable de visualización dpy
proviene de la XOpenDisplay()
función ( línea 203 ), y eso es por definición :
Un servidor, junto con sus pantallas y dispositivos de entrada, se denomina pantalla.
En otras palabras, xset
aplica la configuración globalmente a toda la pantalla, no a las pantallas individuales. Sería necesario cambiar el xset
código fuente para que eso funcione. Las extensiones DPMS en sí mismas parecen llamar solo a la pantalla completa, no a pantallas individuales, por lo que ni siquiera es posible escribir código personalizado con la biblioteca X11.
Controlar manualmente esa configuración a través del /sys
subsistema tampoco parece estar funcionando
$ sudo bash -c 'echo Off > /sys/class/drm/card0-VGA-1/dpms'
[sudo] password for admin:
bash: /sys/class/drm/card0-VGA-1/dpms: Permission denied
Las pantallas también se sacan del modo DPMS cuando se producen eventos clave o del mouse, por lo que teniendo en cuenta que es posible que desee mover el mouse o usar el teclado, cualquiera de esas acciones hará que el monitor salga del modo DPMS.
Soluciones alternativas
La mejor alternativa (y una solución que realmente funciona físicamente) es xrandr
: podría usarse para controlar las "salidas" individuales. En particular,
xrandr --output VGA-1 -off
desactivará esa salida. Sí, ha mencionado que no desea usar esta solución ya que no es lo suficientemente rápida, sin embargo, hasta ahora es la mejor disponible. Tiene un par de ventajas:
- inmune a eventos clave y de mouse
- controla independientemente el outpus a diferencia de
xset
El xrandr --output VGA-1 --brightness 0.1
va a colorear la pantalla de tal manera que parece que fuera, a pesar de que --brightness
es una solución de software, por lo que la pantalla no es en realidad atenuada a nivel de hardware, ni se va a nivel de hardware. Sin embargo, hace el trabajo de borrar una pantalla y también es resistente a eventos de tecla / mouse.
He buscado el código fuente de los protectores de pantalla Mate y Budgie, que son dos tenedores del protector de pantalla GNOME, sin embargo, en cualquier caso, parecen ser una solución de software, ya que no se menciona DPMS en el código fuente.