华硕ROG Ally安装arch Linux和steam
掌机到手半年了,一直是用的Windows,然后装ISTA用来给我车读故障码,刷隐藏和编程用,处于半闲置状态,是时候回归打游戏的本质了
掌机在Windows下待机很不方便,耗电高速度慢,另外试了steamos和bazziteos,待机是解决了,但是系统有些不清真,有很多我不想要的软件存在,steamos基于arch Linux,所以直接装arch Linux自己搭吧!
硬盘换了2T的SN740,电池换了65Wh的,别的是原厂状态
配置IP
sudo ifconfig enp11s0f3u1u4c2 xx.xx.xx.xx netmask 255.255.255.0 up
sudo route add default gw xx.xx.xx.xx enp11s0f3u1u4c2
sudo bash -c 'echo "nameserver xx.xx.xx.xx" > /etc/resolv.conf'
1.分区
分三个区够了
fdisk /dev/nvme0n1
#按照提示分三个区,顺便用t参数修改下分区类型
mkfs.fat -F32 /dev/nvme0n1p1
mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2
mkfs.btrfs -f /dev/nvme0n1p3
2.创建 Btrfs 子卷(标准布局)
mount /dev/nvme0n1p3 /mnt
btrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@home
btrfs subvolume create /mnt/@log
btrfs subvolume create /mnt/@cache
btrfs subvolume create /mnt/@snapshots
btrfs subvolume list /mnt
umount /mnt
3.挂载分区
mount -o subvol=@,compress=zstd,ssd,noatime /dev/nvme0n1p3 /mnt
mkdir -p /mnt/{boot,home,var/log,var/cache,.snapshots}
mount -o subvol=@home,compress=zstd,ssd,noatime /dev/nvme0n1p3 /mnt/home
mount -o subvol=@log,compress=zstd,ssd,noatime /dev/nvme0n1p3 /mnt/var/log
mount -o subvol=@cache,compress=zstd,ssd,noatime /dev/nvme0n1p3 /mnt/var/cache
mount -o subvol=@snapshots,compress=zstd,ssd,noatime /dev/nvme0n1p3 /mnt/.snapshots
mount /dev/nvme0n1p1 /mnt/boot/
4.安装基本系统
echo "Server = https://mirrors.ustc.edu.cn/archlinux/\$repo/os/\$arch" > /etc/pacman.d/mirrorlist
#没有直接安装linux-firmware,因为用不到那么多固件
pacstrap /mnt base base-devel linux linux-firmware-amdgpu linux-firmware-radeon linux-firmware-mediatek linux-firmware-cirrus btrfs-progs vim openssh bash-completion wget
genfstab -U /mnt >> /mnt/etc/fstab
5.chroot
arch-chroot /mnt
#本地化
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
echo "zh_CN.UTF-8 UTF-8" >> /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "Ally" > /etc/hostname
#必要软件
pacman-key --init
pacman-key --populate archlinux
pacman -S grub efibootmgr networkmanager bluez
systemctl enable NetworkManager.service
systemctl enable bluetooth.service
echo 'KEYMAP=us' > /etc/vconsole.conf
mkinitcpio -P
grub-install --target=x86_64-efi --efi-directory=/boot/ --bootloader-id=ArchLinux
grub-mkconfig -o /boot/grub/grub.cfg
echo "[archlinuxcn]" >> /etc/pacman.conf
echo "Server = https://mirrors.ustc.edu.cn/archlinuxcn/\$arch" >> /etc/pacman.conf
pacman -Sy
pacman -S archlinuxcn-keyring
passwd
#创建用户
useradd -m -G wheel -s /bin/bash deck
passwd deck
sed -i 's/^# %wheel ALL=(ALL:ALL) ALL/%wheel ALL=(ALL:ALL) ALL/' /etc/sudoers
usermod -aG video,input,storage,network,audio deck
解决普通用户无法通过network manager联网的问题
vim /etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
return polkit.Result.YES;
}
});
6.安装kde
pacman -S --needed plasma-desktop sddm sddm-kcm \
konsole dolphin plasma-nm plasma-pa kde-cli-tools \
xdg-desktop-portal xdg-desktop-portal-kde bluedevil \
plasma-wayland-protocols plasma-keyboard kinfocenter \
kscreen plasma-disks p7zip ark lrzip lzop unarchiver \
unrar fwupd wqy-bitmapfont wqy-microhei wqy-zenhei
systemctl enable sddm.service
#启用sddm的屏幕键盘,建议将sddm的主题改成支持屏幕键盘的主题
echo "[General]" >> /etc/sddm.conf
echo "InputMethod=qtvirtualkeyboard" >> /etc/sddm.conf
#让sddm和steam界面按电源键待机,而不是默认的关机,不影响登陆后的kde
echo "HandlePowerKey=suspend" >> /etc/systemd/logind.conf
7.安装steam
要先打开multilib
pacman -Sy
pacman -S steam mangohud pacman-contrib
8.安装HHD和inputplumber,中间npm下载和electron下载都会比较耗时,需要好的网络条件,最后为用户开启hhd服务
sudo pacman -S yay asusctl acpi_call inputplumber
sudo pacman -S ttf-dejavu noto-fonts-cjk
sudo systemctl enable inputplumber
sudo systemctl enable inputplumber-suspend
sudo systemctl start inputplumber
yay -S hhd adjustor hhd-ui
sudo systemctl enable hhd@deck
安装好之后,双击奥创可以呼出,不要安装 power-profiles-daemon ,会和HHD冲突。长按奥创可以切换成鼠标模式
9.安装steam-gamepadui-session,使体验尽可能和steamos一样,会自动安装gamescope
yay -S steam-gamepadui-session-git
在sddm界面选择 Steam Big Picture session登录,默认就是进steam大屏幕界面了,可以修改sddm的配置文件,使开机自动登录到steam界面
10.安装decky loader
cd ~/Desktop
wget https://github.com/SteamDeckHomebrew/decky-installer/releases/latest/download/decky_installer.desktop
chmod +x decky_installer.desktop
sudo pacman -S jq
双击桌面的图标,根据提示安装就行,下载较慢,可以考虑ssh远程挂代理执行dekstop文件里面的命令,同样会在桌面弹出提示框。安装完之后需要在steam里面打开开发者模式,开发者模式里面打开CEF远程调试,重启生效,如果不生效可以看看plugin_loader.service的状态
然后就是在steam的decky loader安装各种插件了,Power tool,css loader什么的
11.修改grub文件,配置Plymouth主题什么的,内核参数增加如下部分,实现休眠
console=tty1 splash plymouth.ignore-serial-consoles resume=/dev/nvme0n1p2
经过验证,在steam大屏幕界面,屏幕亮度调节,超时待机什么的功能基本正常,steam设置里面也能更新系统(pacman-contrib实现)。
除了切换至桌面的时候会跳回sddm登陆界面,要手动切session登录,kde桌面要注销手动进gamescope的session麻烦一点之外,别的没什么功能异常的了

浙公网安备 33010602011771号