![udev + xrandr 在插入显示器时设置显示伽玛,短暂有效,但会被覆盖](https://linux22.com/image/847378/udev%20%2B%20xrandr%20%E5%9C%A8%E6%8F%92%E5%85%A5%E6%98%BE%E7%A4%BA%E5%99%A8%E6%97%B6%E8%AE%BE%E7%BD%AE%E6%98%BE%E7%A4%BA%E4%BC%BD%E7%8E%9B%EF%BC%8C%E7%9F%AD%E6%9A%82%E6%9C%89%E6%95%88%EF%BC%8C%E4%BD%86%E4%BC%9A%E8%A2%AB%E8%A6%86%E7%9B%96.png)
我正在使用这样的脚本来设置我的笔记本电脑屏幕和外接显示器的伽马值:
#!/bin/bash
export DISPLAY=:0
export XAUTHORITY=/home/peat/.Xauthority
xrandr --output LVDS1 --gamma 0.7:0.7:0.4
xrandr --output DP1--gamma 0.8:0.8:0.8
在启动时或从终端手动运行它都可以完美运行。但是,当移除或插入显示器时,所有屏幕的伽玛都会重置。我尝试通过在 /etc/udev/rules.d/999_setMonitorGamma.rules 中创建此 udev 规则来解决这个问题:
SUBSYSTEM=="drm", ACTION=="change", RUN+="/home/peat/scripts/setMonitorGamma.sh"
在什么时候它几乎可以正常工作。我可以看到屏幕以正确的伽玛闪烁一小会儿,然后再次应用不正确的伽玛。似乎在处理 udev 规则后会运行某种自动检测,从而重置显示设置。我该如何解决这个问题?
运行基于 Ubuntu 13.10 的 Linux Mint 16