当我在新的 xserver 上启动应用程序时,我试图设置屏幕的分辨率和刷新率。
我通常用来让这个屏幕工作的 xrandr 命令是:
xrandr --newmode 2560x1440 146.27 2560 2680 2944 3328 1440 1441 1444 1465 -HSync +Vsync
xrandr --addmode HDMI1 2560x1440
xrandr --output HDMI1 --mode 2560x1440
xrandr --output LVDS1 --off
我用来启动 xserver 的命令是
xinit /usr/bin/urbanterror $* -- :1
这是我到目前为止所尝试过的
我想我需要将这些 xrandr 设置放入 xorg 配置文件中并将其传递:
xinit /usr/bin/urbanterror $* -- :1 -xf86config xorg.conf
我真的不确定如何编写conf文件来复制这些设置,我发现的最接近的位于此底部 网页,但我觉得它不完整。
我还尝试将 xrandr 命令放入脚本中,使用该脚本作为在新 xserver 中启动的程序。
xinit /home/user/.urtrc $* -- :1
.urtrc 包含
#!/bin/sh
xrandr --newmode 2560x1440 146.27 2560 2680 2944 3328 1440 1441 1444 1465 -HSync +Vsync
xrandr --addmode HDMI1 2560x1440
xrandr --output HDMI1 --mode 2560x1440
xrandr --output LVDS1 --off
exec urbanterror
这很有效,但性能非常棒,在最低设置下我勉强达到 3 fps。我不知道为什么。
任何帮助将非常感激。
更新
在新的 xserver 中运行 glxgears 会出现以下 2 个错误:
libGL error: failed to open drm device: Permission denied
libGL error: failed to load driver: i965
所以我知道这是一个权限问题。从 root 运行时,带有 xrandr 命令的脚本运行良好,并且 glxgears 不会报告任何错误。然而,由于多种原因,我真的不想以 root 身份运行它。
在 systemd 之前,这个问题是通过将用户添加到视频组中来解决的。但是systemd之后就没有视频组了。
任何有关修复这两个错误的帮助将不胜感激。