在ThinkBook 16+ 2025上安装archlinux驯服记录【基本信息与触摸板修复】

(网图,侵删)
高考结束啦,我如愿以偿地录取到了计算与智能科学专业,当然要奖励自己一台称心的电脑啦!
选电脑是一门学问(咳咳)目前来看,市面上的笔记本电脑主要有以下几类:
- 轻薄本:质量轻、便携是最大优势,续航一般也不错,但处理性能羸弱、接口少。主要就上网冲浪、编辑文字,不考虑。
- 全能本:性能较强,性能较好,质量稍大,接口丰富,外观低调,但容易溢价。续航稍微弱一点,差不多8小时。
- 移动工作站:性能超强,续航一般,重量很重,价格很贵
- 游戏本:性能Max,屏幕Max,重量Max,价格High,续航差。
- Mac:贵,屏幕好,续航长,审美不错,*nix系统,程序员易上手。生态已经较为完善了,但还可以进步。
- 鸿蒙笔记本:不可用。(本科四年只用这个我敬你是条汉子)
结合价格、配置、品牌等多方面因素,我最终购买了ThinkBook 16+ 2025 Ultra9 285H 核显版,属于高性能全能本了,价格国补完7000元左右,可以接受。质量2kg左右,对于我一个年轻小伙来说不算事,只是单手拿久了会累。
主要配置信息
- 处理器:英特尔酷睿Ultra 9 285H,16核心/16线程,最高睿频5.4GHz
- 内存:三星 2*16GB DDR5 5600MT/s
- 硬盘:忆联AM541,1TB M.2 2242 PCIe Gen4固态硬盘
- 显卡:英特尔Arc 140T核显
- 屏幕:联想16英寸IPS屏,3200×2000分辨率,165Hz刷新率,100%DCI-P3色域
- 网卡:Intel BE201,支持802.11 a/b/g/n/ac/ax/be(WiFi7)
- 电池:85Wh
第一次live CD
其实用的不是官方启动映像,之前在一个比较小的移动固态硬盘上安装了archlinux,打造了一个Linux To Go. 经过测试,默认情况下,除了触摸板、指纹识别器、静音指示灯无法工作以外,其他硬件似乎都正常。最大的问题在于续航,那个安装里没有安装TLP,也没有开启什么节能选项。查看powertop发现功耗达到了惊人的17W.
调校目标
体验了一小会儿之后,我确定了如下努力方向:
- 修复触摸板问题,因为绝大多数时候,我都不会使用鼠标。
- 音频播放有问题:系统音效正常,但连续播放一会儿音频后,声音中断,此后就没有声音了,我有时候需要用电脑放音乐,因此这一点难以接受。
尽量压低功耗。在Windows上通过AID64查看闲置功率约7W,希望在archlinux上实现接近水平(不打算单独写文章了,降低屏幕亮度,安装tlp并配置得当,把i915驱动替换为xe就够了)实现Windows下同款的OEM功能:联想Fn+Q切换性能模式通过逆向ACPI我已经实现了,然后发现感知不到差异(没有卵用)这款笔记本键盘上有一个目前派不上任何用处的Copilot按键,但是竟然连PrtSc/SysRq键都没有,我希望通过按键映射配置Copilot按键为PrtSc/SysRq.(参考了这个帖子已经解决,值得注意的是,如果想要像我一样把copilot键映射为PrtSc截图键,实际上在keyd配置文件中要写sysrq)
现在,开始侦查

(这是和Gemini Vibe Coding的时候要Gemini给我修复一个它自己引入Bug,然后它自信满满满地要搞定这个Bug,但是失败了)
由于触摸板是我使用频率最高的输入方式,所以我首先展开了对触摸板的修复。
通过在互联网上的检索,我得知问题的源头在于这款笔记本电脑使用的触摸板为Goodix GXTP5100 方案压力感应板 (Force Pad)
Force Pad没有按键,而是在整个触控区域感知压力的变化,发出信号,从而实现点击等功能。这导致它的驱动工作方式有别于一般的触摸板,而linux桌面环境下处理触摸板的libinput没能很好地处理这一点,致使其失灵。
解决
- 升级至最新内核
不用说,有的时候其实上游已经解决了这个问题。像本文提到的这个问题,其实社区已经注意到了,有望在未来修复。
- 创建libinput配置文件
因为libinput不能正确处理GXTP5100这块触摸板,我们需要手动告知其处理方式:
首先创建文件/usr/share/libinput/60-custom-thinkbookg7p2025iah.quirks
然后写入:
1 | [Lenovo ThinkBook 16 G7+ IAH touchpad] |
重启,问题修复。