MBP12,1 装 ArchLinux 的要点
0. 前言
本文年久失修,说不定本文提到的驱动问题在现在的内核已经解决了。尽管大胆地装吧。
首先,这是可行的,而且就最终效果而言还不错。如果你需要一个深度客制化的系统,还是很值得折腾一下的。
在看以下内容之前,先照着这两个 Wiki 做,本文只讲述这两个 Wiki 里没提到的东西:
本文不会涉及太多原理和细节,只给 solution。若有疑问请 @bgm38 或者自行拿错误信息去 Google。
商业系统真特么伟大,把这些琐碎事儿全给你解决了。
1. 安装
分区
在 OS X 下使用 Disk Utility.app
把当前 OS X 分区给「shrink」一块出来,可以先分个 exFAT。接下来照着 Beginner’s Guide 做,用 partd
把这临时分区删了重新划,记得照 MacBook 里提到的那样给分区留一点间隙。
引导
跳过教程里安装引导的部分。安装流程结束后重启进 OS X,安装 rEFInd ,后者会在每次开机时自动扫描所有分区里可引导的操作系统,无需任何配置。
2. 硬件
声卡
在 /etc/modprobe.d/
里随便新建一个什么名字的文件,写下这一行:
|
|
然后重启。进 alsamixer
把 PCH
声卡的 Master 取消静音(按M
)。现在 speaker-test
应该会出声儿了。
默认声卡顺序把 hdmi 排在了前面,而你电脑上没插 hdmi,自然会报错了。所以你需要手动指定一下 index 把 pch 声卡排在前面。
无线网
看上去是开箱即用,但 Broadcom 的驱动有问题:用不了 5G 就算了,开机后第一次连接无线网是正常的,也一直可用,但如果你想切到另外一个网,问题就来了:
|
|
解决方案是替换掉原生的 firmware:
把这俩下载下来,覆盖 /lib/firmware/brcm
里的同名文件,重启就能部分解决问题了。
自动连接无线网
键盘
刚装好时可能会把 ` 误认成 >,可以通过在 /etc/modprobe.d
里增加一个配置解决:
|
|
多功能键
关键道具是 xev
(由 xorg-xev
包提供)和 sxhkd
,前者用来看 keysym,后者用来定义整个 X 范围内的快捷键,在这里就是给多功能键的 keysym 绑定对应的命令或脚本。
sxhkd
的配置文件在 $XDG_CONFIG_HOME/sxhkd/sxhkdrc
,按上面的设置也就是 ~/.config/sxhkd/sxhkdrc
。配置文件的格式很简单:
|
|
然后在 .xinitrc
里启动这个 Daemon:
|
|
键盘背光
关键道具是 kbdlight
,一个封装好的工具省得你 echo
一个数字给 /sys
了。
|
|
kbdlight
的功能还挺全的,你另外可以写个脚本让背光“平滑地”变化。
显示器亮度
|
|
音量控制
|
|
音乐控制
前提是你用 mpd
播放音乐,应该没人不是吧。
|
|
Launchpad 键 和 Exposé 键
自由发挥吧。比如可以把它映射成 rofi
嘛:
|
|
自动调节显示器亮度
Arch wiki 里有一个用 perl 写的脚本,其实原理很简单:
- 读光感计的读数
- 计算目标亮度
- 平滑地增加亮度
其中使用 xbacklight
调整亮度已经是平滑的了,那前两个目标也不难了,自己发挥吧,拿脚本语言撸一个。
3. 软件
使用 yaourt
代替 pacman
,前者是后者功能的超集。
X11
Retina 倒是不难解决:
|
|
然后就是双显示器怎么办了。以前我的显示器是一台 DELL U2412M,插在笔记本的 DP1 口上,内置和外置的两个显示器的 DPI 不一样。我尝试过以下这句:
|
|
虽然两边 DPI 是正常了,但工作区的大小不正常了。具体来说,鼠标在外置显示器上无法移动到画面边缘。
目前我把内置显示器关了,只使用两台 U2412M 工作,绕过了 HiDPI 问题,感觉也不错:
|
|
也研究过一圈 Wayland ,现有的 Wayland composer 有两个:
wlc
,它还不支持多显示器多DPIweston
,它是支持,但没有以它为基础开发的 i3-like WM
综上,等 wlc
完善了再用 sway
吧……
开发
wlc
、sway
和orbment
的家伙都是死宅的感觉……
字体
- 查看所有可用字体列表:
fc-list
- 刷新字体缓存:
fc-cache
字体路径在 fc-list
里也写了,安装字体就是把你自己的字体拷贝到对应位置,再刷一下缓存就行。
~/.Xresources
里可配置的字体,如果带了 xft:
前缀就表示这是个 TTF 或者 OTF。写在这儿的字体名称必须要是 fc-list
里出现的那个。
urxvt
支持字体回滚,例如:xft:英文字体名:size=12, xft:中文字体名:size=12
。但就我实验看来,文泉驿微米黑成功了,但思源黑却怎么都没生效,怀疑也和字体有关。孙志贵修改过的“根源黑体”倒是可以用的。
我的
urxvt
字体配置:
|
|
X11 字体回滚顺序
首先你需要手动定义一下 XDG_CONFIG_HOME
在哪儿:
|
|
然后新建一个 ~/.config/fontconfig/fonts.conf
:
|
|