由于 EDID 显示尺寸错误,等离子 UI 元素过大

由于 EDID 显示尺寸错误,等离子 UI 元素过大

昨天我告别了 Windows 7,安装了 Kubuntu 20.04 LTS(使用非免费的 Nvidia 驱动程序)。虽然实时系统 UI 的大小符合预期,但一旦启动安装的系统,UI 就会变得太大,几乎无法使用。

我使用一台 10 年前的三星 SyncMaster P2450 24 英寸 1920x1080 显示器,它显然发送了错误的 EDID 信息。但它的实际get-edid | parse-edid | grep DisplaySize尺寸DisplaySize 160 90应该更接近 531 x 299 毫米。

Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" SubSection "Display" Option "UseEdidDpi" "False" Option "DPI" "96x96" EndSubSection EndSection 经过一番研究并向 添加了包含的文件后 /usr/share/X11/xorg.conf.d/,大多数 UI(如字体和窗口标题栏)都恢复到了合理的大小,但有些元素仍然很大。尤其是等离子菜单、按钮、滑块、文本字段、krunner 和通知占用了更多空间,而且边角异常圆润。这就是它的样子

在修改 X 配置之前,我还尝试按照以下步骤修改 edid.bin 中的两个大小值(以及校验和)。本指南直到步骤 4,然后按照以下步骤在启动过程中使用它本指南。它包括设置drm.edid_firmware=DP-1:edid/my_modified_edid.bin内核参数并使用钩子脚本将 EDID bin 添加到 initramfs。但如果不更改 X 配置,这似乎本身就什么也不做。

我是否遗漏了任何 Plasma 或 X 配置?或者是否有其他方法可以确保所有内容都使用修改后的 EDID 文件?

因为这是我第一次提问,所以请随时提出改进建议。

编辑:
今天我添加了一个新用户帐户作为测试,所有东西的大小都正确。这让我怀疑问题是由 Plasma 使用一些(特定于用户的)过时的缓存文件引起的。但哪些是罪魁祸首,删除它们安全吗?

由于从那时起我尝试对我的配置进行了很多不同的更改,因此我也将尝试缩小足够的范围。

我还进一步阐明了有关自定义 EDID 的程序。

答案1

解决方案是在更改 X 配置后清除等离子缓存。尤其~/.cache/plasma-svgelements-kubuntu_v20.04.3是桌面 UI 元素和~/.cache/ksmserver-logout-greeter锁定屏幕。

例如,添加一个名为的文件,/usr/share/X11/xorg.conf.d/20-my-custom-dpi.conf其中包含以下几行似乎就足够了。
Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" SubSection "Display" Option "UseEdidDpi" "false" Option "DPI" "96x96" EndSubSection EndSection
尝试创建自定义 EDID 是不必要的,因为它会被忽略或以其他方式再次被原始 EDID 覆盖,至少在我的情况下是这样。

相关内容