距离上一次体验lenovo10e chromebook帖子已经过去好几个月了,主要还是没有足够的动力去写东西。接下来我来说一下这台设备正确的打开方式--ubuntu22.04 on aarch64
在ubuntu系统下,先前介绍的chrome os存在的许多问题都被解决了,损失的仅仅是android子系统的兼容性。
刷机教程转载自互联网,教程链接在此:https://www.dnlab.net/archives/93/
原GitHub项目链接:https://github.com/hexdump0815/linux-mainline-on-arm-chromebooks
lenovo10e chromebook镜像:https://github.com/hexdump0815/imagebuilder/tree/main/systems/chromebook_kukui
一切荣誉归上述原创作者们,我只是搬运工。
简洁介绍刷机教程的每个步骤:
(1)chromebook开启开发者选项
(2)下载github中的找到的对应镜像,lenovo10e代号是kukui,找一个空U盘(容量在8G就够,大点最好,也不用太大),电脑上用BalenaEtcher软件写入这个镜像到U盘,同时在U盘新建一个分区,把镜像直接复制到这个分区中备用,这个操作很重要。
(3)将U盘插入chromebook上(需要一个otg转接线,最好是下图这种带有一个type-C接口的这种,可以在otg的同时连接电源供电),开机选择U盘,进入系统。

(4)进入ubuntu系统之后,随便选择一个桌面环境登录,用户名是linux,密码是changeme。这时候打开文件管理器,挂载U盘上的那个装有ubuntu系统镜像的分区。此时可以进入tty或者普通终端,使用zcat和dd命令解压镜像并写入到mmcblk0分区中。与上一次的etcher软件写入的区别是,上次是写入U盘,这次是写入chromebook的emmc的一个分区中。这次写入是真正意义上的刷机,从此chromebook上就没有chrome os了,只有ubuntu。
zcat xxx.img.gz | dd of=/dev/mmcblk0 bs=1M status=progress
(5)写入完成之后,关机,拔掉U盘,开机,这次在启动选项中选择从内部磁盘启动。你会发现这次进入了ubuntu系统,而且启动速度非常快,因为emmc的速度比U盘快很多。但你会发现一个问题,这个系统的硬盘分区非常小,因为原版镜像为了节省空间,默认用了最小的分区大小,此时你需要执行一个系统内的脚本,来扩展系统分区到全盘。
sudo /scripts/extend-rootfs.sh
(6)到这里已经可以说刷机完成了,接下来是各项配置。一个是修改传感器偏置,另一个是修改默认的用户名和密码。再一个是配置btrfs的挂载方式,让timeshift备份软件可以正常工作,之后是漫长的备份过程(不备份也能正常使用,不修改挂载方式也能正常使用,但是建议是备份一下,因为整个刷机配置的过程还是比较麻烦的,备份之后可以在系统玩坏的时候快速恢复非常方便)。
(1)桌面环境选择:
其实刷机完成之后,你可以安装任何喜欢的桌面环境。我自己的体验是,gnome桌面且使用wayland模式登录最好。wayland的图形效率比传统的xorg好很多,流畅度上有很大提升,而且wayland对触摸屏支持的很好,常见的浏览器如firefox和chromium都支持触摸操作。在gnome桌面下,可以使用两指缩放页面,可以三指切换workspace。plasma桌面虽然很漂亮,但是支持的不是特别好,流畅度也比gnome差一截。
我这里使用了macos风格的gnome主题和动画效果。

下图是三指切换workspace,一边是moonlight显示的windows副屏,一边是ubuntu系统的gnome桌面,作为副屏也是我平时使用它最多的场景。

(2)浏览器的选择:
由于系统自带的firefox对硬件加速支持的不好,推荐chromium浏览器,它可以利用panfrost GPU驱动的硬件加速,提高页面流畅度,并且降低cpu性能的消耗。这在播放哔哩哔哩弹幕视频的时候表现尤为明显。而且chromium浏览器有丰富的插件支持,综合来看是最佳选择。
(3)文字办公软件:
可以选择同时安装libreoffice和wps,他们都有arm版本的。安装wps自不用说,国产最强办公软件,党政机关都在用,办公标配。libreoffice是ubuntu上经典的办公软件,开源自由,在国际上非常有名,但是用的人其实不是特别多,在这里只是作为一个备用选项,也是一个依赖项,在后面多媒体工具的介绍中会讲它的作用。
做笔记的软件很多,这里推荐Obsidian,网上很火的笔记软件,支持latax公式输入,编辑灵活,界面美观优雅,但是我本人做笔记的时间不多,一般就是用word写一些材料和论文。
(4)聊天软件:
在国内基本上就用官方的QQ和微信就可以,在我上一篇帖子发表的时候,官方linux arm版的微信还没有发布,但是那时候已经可以用flatpak版本的wechat,其实也是一个arm官方版的wechat打包出来的,据说来自于UOS。体验上还是最近发布的官方微信比较好,毕竟可以看朋友圈,而flatpak版本的不能看朋友圈。聊天上没有多少区别。
在国外也可以用telegram,discord,由于国外的web生态比我们大陆的互联网好很多,因此不仅可以安装deb安装包版本的客户端,还可以直接用chromium的插件第三方telegram、discord客户端,直接聊天,其实体验也非常好,还有其他的一些聊天应用,不一一介绍了。
(5)媒体播放器:
系统默认的媒体播放器比较废物,原因在于系统提供的解码器不全,如果想用的话需要去应用商店中把一系列额外编解码器下载安装一下,很简单,应用商店里面可以直接安装。
如果不是一定要用自带的媒体播放器,还可以使用vlc媒体播放器,音频视频、本地和流媒体都能播放,直接使用apt安装即可。
也推荐kodi播放器,很多玩电视盒子的用户都喜欢这个播放器,功能强大。
(6)视频转码工具:
说到视频解码问题,就得聊一聊格式转换。在windows系统上可以用格式工厂、ffmpeg、mediacoder等工具,但是格式工厂在linux系统下只能通过wine兼容层运行,效率低不说,还有兼容问题。不过好在ffmpeg是跨平台的,可以直接安装使用。也可以使用带有gui的浏览器ffmpeg工具,可以方便操作。实际上linux系统上有一个叫ff-converter的工具,本质上也是一个套壳ffmpeg工具,界面十分友好,基本可以替代格式工厂,但是它依赖于前文所提及的libreoffice。
视频剪辑使用shotcut和kdenlive,两者都是非常有名的剪辑软件,但是在chromebook上,mtk8183的性能相对比较孱弱,导出是很慢的,因此剪辑可以,但是导出项目的时候推荐使用其他电脑完成。
(7)音频转码工具:
实际上编辑音频的工具很多,其中比较经典的是audacity这款开源软件,可以对音频进行剪辑和格式转换。它跨平台,windows、linux、mac,arm、x86都有。操作界面非常符合直觉,轻松易上手。
(8)图像编辑软件:
首先是Photoshop的平替:GIMP,强大无需多言,网上教程也是一抓一大把。生态很好,本身也做的十分专业。
其次是绘图,这里推荐visio的平替:drawio,它可以兼容visio的格式,平且提供了相当丰富的图形样本,操作简便,直观,功能强大,我的论文都用它画神经网络架构图。它有网页版和安装版,功能上一模一样,但是安装版不需要网络也可以随时随地使用。开源,跨平台,很不错的软件。
最后是工程做图:目前涉猎的不多,只体验过openscad,总体来说还不错,可以快速的画出3D模型图。本人非专业人士不做太多评价。
截图工具:系统自带的工具就可以满足日常的截图裁剪和录屏,如果需要更多的编辑功能,可以使用flameshot,功能很强大。
(9)多屏协同工具:
投屏播放:macast,可以接收来自手机和其他设备的DLNA投屏播放,是一个开源项目。kodi据说也可以,但是没玩过kodi。
手机跨屏协同:scrcpy,直接用无线连接比较稳定,有线连接容易闪退。
多屏显示:sunshine+moonlight串流。也就是可以把这台chromebook作为一个便携屏,比如看论文的时候可以两个屏幕显示更多内容。这个软件是跨平台的,准确的说是全平台,windows、macos、linux、android都有,x86、arm也都支持。名副其实的神器。在B站也有详细的操作教程,请自行查阅。
(10)安卓子系统:
waydroid:如果你忘不了chrome os上的安卓子系统,不妨可以试试waydroid,据说在arm平台上运行android应用兼容性很好,但是我没有详细研究过这个软件,没有成功运行。
(11)windows应用转译:
经典的wine:玩过linux应该都了解这个,在arm平台上还要另外安装box86/box64,在kukui上兼容性不是很好。
playonlinx:四叶草经典wine管理器,它支持建立不同版本的wine环境,在linux系统上很有名,但因为底层还是依赖于wine,因此在kukui上兼容性不是很好。
qemu虚拟机:正常玩但是性能有点低。
(12)远程工作:
todesk:知名远程控制软件,但是由于在wayland上不支持被控制,因此只能作为主控机,效果挺好的,平时上课什么的带着chromebook,可以远程操控实验室和宿舍的电脑。
(13)局域网文件传输:
kde-connect:经典局域网多端协同软件,可以同步剪切板,局域网内传文件,局域网内访问设备存储,局域网内呼叫设备。神器一个。
gs-connect: gnome桌面上兼容kde-connect的软件,安装方式有别于kde-connect,需要安装gnome shell扩展插件,在gnome桌面体验优于kde-connect。
Filezilla:很好用的经典ftp工具。
snapdrop:类似于airdrop的局域网传输工具。
(14)程序设计:
java:idea
c/c++:小熊猫c++、Dev-cpp
python:pycharm
脚本编辑器:vscode,sublime,kate,自带的gedit,vim,nano
(15)启动优盘、光盘烧录工具:
BelenaEtcher、xfburn光盘烧录工具、USBImager
以上都是常用的一些软件,基本上已经可以覆盖90%的使用场景(还有大量的好软件没有介绍),说这台lenovo10e平板是一台标准的电脑没有任何问题,而且它的续航非常的持久,充满电看视频能七八个小时,办公写代码就更久了,对于学生,上课之前往书包里面一装,课堂上拿来记笔记打打字,下课了看看B站网页,浏览一下社区网站,聊聊微信和QQ,非常方便,而且基本上没有续航焦虑,回宿舍插上电边充电边使用。
现如今的ubuntu arm生态其实已经显著好于三年前。如今ubuntu arm的应用主要有三个系列,首先是默认的apt生态,含有的应用数量已经比较全面,基本上都有针对arm进行的编译,但是apt的耦合性比较强,容易出现依赖问题,可以考虑从使用aptitude代替默认的apt,但是还是难免会遇到无法解决的问题。其次是flatpak/snap的生态,它们打包了很多有用的软件,并且解决了环境兼容问题,但是通常安装占用的空间比较大,所以很多人不喜欢这种。第三种是docker生态,他也是现在比较流行的一种趋势,很多服务开始朝docker的方向发展,也是容器化。
不得不提的一点,这里有一个对ubuntu arm贡献很大的组织树莓派社区。树莓派有很多设备是arm的,因此很大程度上维护了arm的生态。树莓派有一个应用商店叫pi-apps,这个应用商店包含了极为丰富的应用,并且它不仅仅支持树莓派设备,同时也支持其他arm设备,比如我们的kukui。
篇幅原因,关于pi-apps应用商店的介绍留在下一篇帖子专门说明。