ASUS C302
Asus C302 (也称为 Asus C302C 和 Asus C302CA) 是一款 Chromebook,可以安装 Linux。以下是一些关于 Arch Linux 顺利运行的提示。
安装
将 acpi_osi=Linux intel_iommu=on,igfx_off
添加到您的内核参数。
intel_iommu=on,igfx_off
来自 BBS#228604,以防止以下错误出现在 dmesg 的输出中
[drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun
CPU 是 Intel Core M3,因此请安装 intel-ucode。
内核模块
例如,在 /etc/modprobe.d/skylake.conf 中
# Needed, for the nau8825 kernel sound modules to initialize blacklist snd_hda_intel
options tpm_tis interrupts=0
屏幕
屏幕对角线为 12.5 英寸。在 1920x1080 分辨率下,这是 176 DPI,属于 HiDPI。
在 ~/.xinitrc 中,设置屏幕尺寸(以毫米为单位测量)
xrandr --fbmm 277x156
垂直同步
为了在 XFCE 中实现正确的垂直同步(包括例如 Firefox 中的全屏 Youtube),请安装 xfwm4-gitAUR,并启用 XFCE 的合成器。
正确的垂直同步还需要 xf86-video-intel,而不是 modesetting。
在 /etc/X11/xorg.conf.d/20-intel.conf 中
Section "Device" Identifier "Intel Graphics" Driver "intel" EndSection
屏幕翻转
要在帐篷模式下使用笔记本电脑,以下脚本将翻转屏幕和触摸输入
#!/bin/dash set_normal() { r="normal" ctm="1 0 0 0 1 0 0 0 1" } set_upside_down() { r="inverted" ctm="-1 0 1 0 -1 1 0 0 1" } line=$(xrandr | grep '^eDP.* connected ') screen=$(printf "%s" "$line" | cut -d" " -f1) if $(printf "%s" "$line" | grep -q ' inverted (normal') ; then set_normal else set_upside_down fi xrandr --output "$screen" --rotate "$r" xinput set-prop "Elan Touchscreen" "Coordinate Transformation Matrix" $ctm
键盘
要将 Chromebook 顶行键用作 xorg 中的有用键,请使用例如
在 ~/.Xmodmap 中
keycode 9 = Escape NoSymbol Escape keycode 22 = BackSpace BackSpace BackSpace BackSpace Delete NoSymbol Delete keycode 37 = Control_L NoSymbol Control_L keycode 50 = Shift_L NoSymbol Shift_L keycode 66 = Caps_Lock NoSymbol Caps_Lock keycode 67 = Home F1 Home F1 F1 F1 XF86Switch_VT_1 keycode 68 = End F2 End F2 F2 F2 XF86Switch_VT_2 keycode 69 = Prior F3 Prior F3 F3 F3 XF86Switch_VT_3 keycode 70 = Next F4 Next F4 F4 F4 XF86Switch_VT_4 keycode 71 = Delete F5 Delete F5 F5 F5 XF86Switch_VT_5 keycode 72 = XF86MonBrightnessDown F6 XF86MonBrightnessDown F6 F6 F6 XF86Switch_VT_6 keycode 73 = XF86MonBrightnessUp F7 XF86MonBrightnessUp F7 F7 F7 XF86Switch_VT_7 keycode 74 = XF86AudioMute F8 XF86AudioMute F8 F8 F8 XF86Switch_VT_8 keycode 75 = XF86AudioLowerVolume F9 XF86AudioLowerVolume F9 F9 F9 XF86Switch_VT_9 keycode 76 = XF86AudioRaiseVolume F10 XF86AudioRaiseVolume F10 F10 F10 XF86Switch_VT_10 keycode 111 = Up Up Up Up Prior Prior keycode 112 = Prior NoSymbol Prior keycode 113 = Left Left Left Left Home Home keycode 114 = Right Right Right Right End End keycode 115 = End NoSymbol End keycode 116 = Down Down Down Down Next Next keycode 117 = Next NoSymbol Next keycode 118 = Insert NoSymbol Insert keycode 119 = Delete NoSymbol Delete keycode 124 = XF86PowerOff NoSymbol XF86PowerOff keycode 167 = XF86Forward NoSymbol XF86Forward keycode 182 = XF86Close NoSymbol XF86Close keycode 191 = XF86ScreenSaver NoSymbol XF86ScreenSaver
(此列表可以精简。)
~/.Xmodmap 将由 /etc/X11/xinit/xinitrc 加载,它实际上运行
xmodmap ~/.Xmodmap
键盘背光
为了能够以普通用户身份更改键盘背光亮度,请以 root 身份运行
b="/sys/devices/platform/GOOG0002:00/leds/chromeos::kbd_backlight/brightness" chgrp users "$b" && chmod 660 "$b" && echo 6 > "$b"
它是一个介于 0(关闭)和 100(全亮度)之间的值。ChromeOS 上的默认值为 25。6 是一个合理的较低值。
当键盘未使用时,ChromeOS 能够禁用键盘背光 - 该功能似乎在 Linux 内核中不可用,但可以使用一个简单的脚本复制,借助 xprintidle,例如
#!/bin/dash set_keyboard_backlight() { printf "%s" "$1" > "/sys/devices/platform/GOOG0002:00/leds/chromeos::kbd_backlight/brightness" b="$1" } b=0 while true ; do pgrep ^Xorg > /dev/null || exit 0 seconds_to_sleep=10 idle_millis=$(xprintidle) if [ "$idle_millis" -gt 10000 ] ; then nb=0 seconds_to_sleep=5 else nb=25 seconds_to_sleep=15 fi if [ "$nb" -ne "$b" ] ; then set_keyboard_backlight "$nb" fi echo "nb=$nb, sleeping for $seconds_to_sleep" sleep "$seconds_to_sleep" done
触摸板
截至 libinput 1.12.0-2,触摸板工作良好,包括
- 轻击
- 单指轻击 = “左”键
- 双指轻击 = “右”键
- 三指轻击 = “中”键
- 压感触控板(点击触摸板的下部)
- 左侧 = “左”键
- 右侧 = “右”键
- 中间 = “中”键
鼠标
由于 USB 端口数量有限,蓝牙鼠标是一个不错的选择。罗技 M590 鼠标效果很好。
在启动时运行 “bluetoothctl power on &”,例如在 ~/.xinitrc 中
例如,在 /etc/X11/xorg.conf.d/99-mouse.conf 中
Section "InputClass" Identifier "Logitech M590" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "libinput" Option "AccelProfile" "flat" EndSection
然后,可以使用 XFCE GUI 在“设置 - 鼠标”中设置鼠标的“速度”,将“加速度”设置为例如 2.0
声音
声音是一个 正在进行的工作。仅使用耳机时,声音是可靠的。
将音频固件另存为 /lib/firmware/9d70-CORE-COREBOOT-0-tplg.bin (文件大小 23120 字节)。
要将音频设置为合理的水平,请在 ~/.xinitrc 中运行
amixer -q -c0 sset Headphone 70% &
Pulseaudio
为了防止音频“咔哒”声,请注释掉 /etc/pulse/default.pa 和 /etc/pulse/system.pa 中的 “load-module module-suspend-on-idle”
线圈啸叫
偶尔会出现线圈啸叫,可以通过运行以下命令大大减少
printf "1" > /sys/devices/system/cpu/intel_pstate/no_turbo