机械革命¶
Tuxedo驱动¶
机械革命的一些笔记本是志合讯息的公模机器,可使用Tuxedo的驱动。安装mechrevo-drivers-dkmsAUR包。
安装驱动后,机器上性能模式切换键变为映射Alt + Meta + F6,可利用快捷键绑定执行切换电源模式的命令;Fn + F4可正确切换飞行模式,Fn + F6 和 Fn + F7 可调节键盘背光亮度并被GNOME正确识别。
在安装tuxedo-control-center-binAUR包后,可以用TCC控制和查看机器的一些特性,但性能模式切换键在部分机型(如旷世X Pro)上仍无作用,且在部分机型(如旷世X Pro)上会使独立显卡始终处于唤醒状态。
注意
下面小节中的内容在且仅在机械革命旷世X Pro上测试过。你应当自行判断这些操作的风险。
配置键盘背光颜色¶
固定颜色¶
例:配置为红色
echo "255 0 0" | sudo tee /sys/devices/platform/tuxedo_keyboard/leds/rgb:kbd_backlight/multi_intensity
可以用systemd服务来在启动时设置键盘背光颜色。
脚本和服务示例
在合适的地方创建一个文件用来存放颜色值。我使用的是/share/kbd_backlight,内容如下:
创建systemd服务:
/etc/systemd/system/khyan-tuxedo-keyboard-backlight.service
[Unit]
Description=Set TUXEDO Keyboard Backlight Colour
After=multi-user.target systemd-modules-load.service
ConditionPathExists=/sys/devices/platform/tuxedo_keyboard/leds/rgb:kbd_backlight/multi_intensity
[Service]
Type=oneshot
ExecStart=/bin/sh -c 'cat /share/kbd_backlight | tee /sys/devices/platform/tuxedo_keyboard/leds/rgb:kbd_backlight/multi_intensity'
User=root
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
启用服务:
利用systemd服务,还可以达到自动轮换颜色的效果。
自动轮换颜色的脚本和服务示例
注意
这并未经过广泛的测试,已知可能会影响使用键盘上的按键调节背光亮度。
/usr/local/bin/khyan-tuxedo-keyboard-backlight-cycle.sh
#!/bin/bash
COLOR_FILE="/sys/devices/platform/tuxedo_keyboard/leds/rgb:kbd_backlight/multi_intensity"
RED=255
GREEN=0
BLUE=0
INTERVAL=0.01
function write_color() {
echo "$RED $GREEN $BLUE" > $COLOR_FILE
}
function tick() {
sleep $INTERVAL
}
while true; do
for i in {0..250..5}; do
GREEN=$i
RED=$((255 - i))
write_color
tick
done
RED=0
for i in {0..250..5}; do
BLUE=$i
GREEN=$((255 - i))
write_color
tick
done
GREEN=0
for i in {0..250..5}; do
RED=$i
BLUE=$((255 - i))
write_color
tick
done
BLUE=0
done
/etc/systemd/system/khyan-tuxedo-keyboard-backlight-cycle.service
[Unit]
Description=Cycle TUXEDO Keyboard Backlight Colour
After=multi-user.target systemd-modules-load.service
ConditionPathExists=/usr/local/bin/khyan-tuxedo-keyboard-backlight-cycle.sh
Conflicts=khyan-tuxedo-keyboard-backlight.service
[Service]
Type=simple
ExecStart=/usr/local/bin/khyan-tuxedo-keyboard-backlight-cycle.sh
User=root
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
启用Fn锁定功能¶
启用:
禁用同理。
可以用systemd服务来在启动时启用Fn锁定功能。
脚本和服务示例
创建systemd服务:
/etc/systemd/system/khyan-tuxedo-keyboard-fnlock.service
[Unit]
Description=Enable Tuxedo Fn Lock Control
After=multi-user.target systemd-modules-load.service
ConditionPathExists=/sys/devices/platform/tuxedo_keyboard/fn_lock
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/sh -c 'echo 1 > /sys/devices/platform/tuxedo_keyboard/fn_lock'
ExecStop=/bin/sh -c 'echo 0 > /sys/devices/platform/tuxedo_keyboard/fn_lock'
User=root
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
启用服务: