给笔记本换代升级

是时候更换笔记本了。这部历经七年半的高强度使用,大修不断(更换过散热模块、C 面、固态盘,其中有卸除旧键盘、移植到新 C 面的经历),如今响应迟钝、键盘报废,看来大限已至;但卡上的款子不多,全新的不舍得,二手的配置和品质不足。最后决定采购廉价 Chromebook 并改装。下面是改装过程和一些补充想法。

一、更换的理由和筹备过程

1.1 旧本子的痛点

旧本子是在 2017 年采购的;除了能用,它几乎一无是处

  1. 散热模块从到手起就不正常,处理器的热量未能传导,导致一直过热。彼时我有权申请退换货,但没有这样做,而是采购了散热模块置换。
  2. 屏幕素质极差无比,6-bit 色深,且严重偏色;网上好不容易才找到校准文件并运用。亮度也是偏低的。
  3. 塑料外壳,似乎是沿用了更早前配置光驱和 2.5 寸普通硬盘的旧模具,导致里面空空荡荡,多出的空间都拿塑料框架填充了,没有划给电池。曾出现螺柱周围塑料断裂的情况,导致整个 C 面都要更换。
  4. 电池很小,续航不足 4 小时。
  5. 网卡配置极其抠门:无线带宽 433M,有线百兆——即使在 2017 年,千兆网卡都已基本普及了。后续更换了无线网卡。
  6. 主板上可见 M.2 接口焊盘,但不知何故没有用上,这样就断绝了升级 NVMe 固态盘的可能。我猜测此处可能引出了处理器仅有的 4 条 PCIe 通道,和独立 GPU 水火不容,因此不打算尝试焊接接口。
  7. 扬声器“能响”,但发声尖锐,低音全无,效果极差。
  8. 系统反应迟缓,即使换用 Arch Linux 也只能部分缓解;大约让双核处理器拖累了。
  9. Linux 对触摸板的支持不佳,没有手势;随 C 面更换的触摸板甚至出现无法正确识别的问题(被视为普通鼠标),被迫换用旧板子。

新年以来, 键盘开始出现连击故障,成为了压倒骆驼的最后一根稻草。

1.2 为何选择 Chromebook

这里是我的基本需求:

  • 首先、也是最重要的一点:我的可接受预算仅有 1000~2000 元,越低越好。
  • 屏幕一定要出色,色彩素质好,适合长期打字、影音使用;故 3:2 比例最佳,但可接受 16:10;分辨率以高于 1080P 为佳。
  • 处理器以四核起步;可以接受集成 GPU,虽然有《Minecraft》游戏需要,但规格低些也无妨。
  • 内存以 16 GB 起步。
  • 固态盘以 256 GB 起步,最好可更换,以便利用淘汰下来的好东西 SX8200 Pro。
  • 可运用 USB Type-C 供电。
  • 续航和扬声器应有所改进。
  • 无 Windows 授权也无妨,反正最终要安装 Linux。

一通筛选下来,普通 Windows 本子鲜有令人满意的。这时漂洋过海而来的一众 Chromebook 进入了视野,其中不乏高品质的款式:

联想 Yoga C13宏碁 Spin 713 2W宏碁 Spin 713 3W惠普 Dragonfly
处理器Ryzen 5 3500U/
Ryzen 7 3700U
算力:中等
Core i5-10210U/
Core i7-10510U
算力:中等
Core i5-1135G7
Core i7-1165G7
算力:强
Core i5-1235U/
Core i7-1265U
算力:强
集成 GPUVega 10/Vega 11UHD 620Iris Pro 80/96EUIris Pro 80/96EU
内存8 GB16 GB16 GB16/32 GB
屏幕1920 x 1080 (16:9)2256 x 1504 (3:2)2256 x 1504 (3:2)3000 x 2000 (3:2)
二手价格~700~10001500~17002000+

还得知现有 x86 Chromebook 均可绕过固件锁,刷上通用 BIOS。如此,这些大船货越发地诱人了。最终选定 Spin 713 2W——不强求游戏性能,但屏幕一定要好,况且它便宜。

1.3 到货!

小黄鱼有人专门卖 Chromebook。在某人的主页里发现许多 Spin 713,有的未焊接 M.2 接口;有的 C 面处缺少一个软垫(反光和另三个角落差别明显);有的触摸屏失效;但还有一台没有明显瑕疵,也符合我的一切需要,扭捏一个月后买下了。

first-look

乍一看很有品质感;开盖即开机,两秒进入 ChromeOS。屏幕好坏一眼便知:细腻、通透,亮度高(但放到当下只能处于中游)。键盘有段落感,没有旧本子软捏捏的手感。有两个 Type-C 接口,均可充电,但略遗憾的是仅支持 5 Gbps 速率。
ChromeOS 要求登录在线帐户,方可开放全部功能;可以进入免密码的访客模式,但数据不会保留。在局域网没有启用全局代理的情况下,系统基本无法正常使用。访客模式下,我仍体验到 360 度翻转触摸屏和陀螺仪的好处:大角度翻转后,屏幕从普通笔记本模式转为平板模式,操作向平板对齐,同时禁用键盘和触摸板,且随屏幕倾角相应地旋转画面——标准的二合一笔记本操作逻辑,可谓一气呵成。

二、刷固件并安装系统

2.1 更新主板固件

MrChromebox 网站提供了一系列工具、固件和相关文档,以便将 Chromebook 改造为“正常”的笔记本。幸运的是,即使没有登录在线帐户,我仍可在访客模式下启动神秘的 VT-2 命令行,按教程操作可平稳过关。获取脚本稍为繁琐:脚本托管于 GitHub,未能直接下载,转而通过 U 盘传送、修改脚本源等使脚本工作;固件则可直连下载。过程中要拆机并拔掉电池,以移除硬件锁;当然这于我可谓得心应手。

顺便看看机器里面的构造。布局还是比较合理的,一半主板、一半电池;内存不可扩容;M.2 硬盘位置在排线正下方,这可能会对硬盘散热不利,毕竟不能借助导热垫直触 D 面;处理器散热模块十分单薄,肉眼估测解热能力仅有 15W 左右,可能会影响算力(当然最后反应速度消除了这项疑虑)。

inside

重启,映入眼帘的是一只兔子;BIOS 仅负责引导系统,没有其它功能或设置。

2.2 更换硬盘

随机硬盘是西部数据 SN530;性能一般,而且不清楚其是否可能受“冷数据门”影响。鉴于此,我从硬盘盒取出“99 新”、作为 PCIe 3 时代佼佼者之一的威刚 SX8200 Pro,替换上去。但愿它不会重蹈前世覆辙

2.3 安装 Arch Linux

可能会有人向我安利 NixOS——讲真,Nix 有的东西在 Arch 也有,实在没必要节外生枝。

依往常习惯安装 Arch。 现在的镜像内置 archinstall——这款工具大大方便了 Arch 安装过程,不过自由度稍减弱了些;例如我希望在安装 KDE Plasma 核心组件的同时,仅引入少量 KDE 应用(之前谈到,KDE 全家桶用的存储空间过大),它便无能为力了。由于有早前经验,我仅需给硬盘分区、archstrap、安装引导、看着旧本子软件包列表依葫芦画瓢,便可开始使用。

这里没有从旧本子克隆现成的 Arch 实例;这是因为在早前的各种鼓捣过程中遗留了过多的无用文件和软件包,没有必要带到新的平台上。

2.4 额外的优化步骤

  • 音频系统依赖 sof-firmware 和一批专有驱动,用这个脚本可以解决。
  • 触摸屏、触摸板受 Linux 主线内核驱动支持
  • 风扇、背光等调节依赖 AUR 软件包 fw-ectool-git。这是为 Framework 模块化笔记本量身订制的万能工具;从开源信息看 Framework 是少数几款基于 ChromeOS EC 控制器、但不采用 ChromeOS 的平台之一。我由此得以操控风扇转速和调节曲线(重启似乎不会保存)、键盘背光(重启后仍保存)、诸 Type-C 接口功能等。
  • 键盘特殊键重映射依赖 keyd,用这个脚本可以快速设定好。

三、正式体验

first-look

响应速度

  • 刨除引导菜单的倒计时,开机仅用六秒;登陆后进入桌面仅用三秒。这个成绩比旧本子快一倍,可归功于处理器和硬盘性能的改善。
  • Firefox 启动用时 1.5 秒,也快于旧本子一倍;接近于台式机表现。

诸组件驱动情况

  • 150% 缩放下,屏幕显示效果较好,文字细腻。
  • 无线网卡是基于 Wi-Fi 6 的英特尔 AX201,驱动支持和连接速率均优良。
  • KDE Plasma 对触摸屏支持较好,浏览器等可以滑动,gwenview 支持翻页、两指缩放等手势。
  • 陀螺仪不受支持。 旋转屏幕要手动设置。翻转屏幕后,任务栏自适应为平板状态,但其它要素没有变化,画面也不会自动翻转。
  • 触摸板支持上佳,单指、两指手势均可识别。
  • 扬声器有较大改善,可以感知到一些低音,高音不再刺耳。无愧于最高 2W 的功耗峰值设定。
  • 摄像头kamera 测试正常。
  • 诸 USB 接口通信正常。
  • TF 卡槽正常工作。它的原始设定可能是在板载 128 GB 存储的基础上扩容,但既然我慷慨地给予 1 TB 内置存储,还拥有两块可支配的 256 GB 移动固态盘,它便显得不那么重要了。
  • 续航方面没有严格地做测试,但在仅启动 Zed 编辑器并打字、屏幕亮度设于 10% 的情况下,两小时后电量下降四分之一;因此,推测轻度使用可至少开机 8 小时。
  • 风扇有自己的一套调控曲线,只有 ectool 可以操控;在低于一定阈值(估计 2600 rpm 上下)时变得异常安静。我甚至一度怀疑它会停转。
  • 机器内似乎是有磁控开关控制电源,此物十分灵敏,待机、合盖时移动本子有几率触发开机
    ——从 Arch Wiki 来看,可能有其他东西触发了开机。

其他方面的体验

  • 全局主题改为 Chrome OS Dark。吃水不忘打井人😉
  • 原来 Caps Lock 的位置现在成了搜索键(其定义类似于 Windows 开始键),需要适应;经过 keyd 重定义后,现在控制特殊键功能。特殊键本身成为了通用的 F1~F10 键,其中 F2 键是 VS Code 和游戏都迫切需要的。

从此可以愉快地使用了。后续可能会补充更多细节。