我的 Ubuntu 笔记本电脑每天都会停靠在几个不同的位置,使用不同的硬件和用例。我想自动执行每个位置的首选项设置:
- 工作电脑,双头 1280x1024
外部 USB 音频和蓝牙音频 - 家用电脑,双头 1280x1024,1080p
外部 USB 音频
基本上,当我将盒子停靠在(1)或(2)时,我希望自动获得适合不同屏幕几何形状和正确音频路由的正确 xrandr 设置。
哪些脚本等导致了难以捉摸的默认行为?
是否有可以定制这个的包?
如果我想自己动手,那么使用哪个库来捕获热插拔事件是正确的?
答案1
我认为,实现此目的的最佳方法是通过 udev 规则。Udev 是一个守护进程,它检测连接的硬件,并根据此类事件执行特定任务。在 Google 上搜索“编写 udev 规则”,然后选择最适合您情况的教程。
简而言之,规则放在下面的文件中/etc/udev/rules.d/
,涵盖各种硬件相关事件。您要编写的规则可能总是以RUN+="/path/to/your/script --with its --parameters"