准备

安装时键盘不可用,用外接键盘。

连接网络

1
2
3
4
5
root@archiso ~ # iwctl
[iwd]# device list
[iwd]# station $mywlan scan
[iwd]# station $mywlan get-networks
[iwd]# station $mywlan connect $SSID
更新镜像列表和源

cat /etc/pacman.d/mirrorlist进行验证。

1
2
reflector -c china -a 10 --sort rate --save /etc/pacman.d/mirrorlist
pacman -Syyy

分区

fdisk -l看设备名,fdisk $device开始分区。

m查看帮助,n新建分区,w保存分区表。

mkfs.ext4格式化新分区,用mkswap初始化swap分区:

1
2
3
mkfs.ext4 /dev/nvme0n1p6
mkfs.ext4 /dev/nvme0n1p7
mkswap /dev/nvme0n1p5

/mnt为根目录挂载各分区,包括Windows的efi分区:

1
2
3
4
5
6
7
8
mount /dev/nvme0n1p6 /mnt

mkdir /mnt/home
mkdir /mnt/boot

mount /dev/nvme0n1p7 /mnt/home
mount /dev/nvme0n1p1 /mnt/boot
swapon /dev/nvme0n1p5

安装

系统和固件,顺便装vimsudo

1
pacstrap /mnt base linux linux-firmware vim sudo

生成fstab:

1
genfstab -U /mnt >> /mnt/etc/fstab

chroot进新系统:

1
arch-chroot /mnt

设置时区,双系统就不用把系统时间刷到硬件了:

1
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

设置locale:

1
2
3
vim /etc/locale.gen
# 取消注释en_US.UTF-8和zh-CN.UTF-8两行
locale-gen
1
2
vim /etc/locale.conf
# 写入LANG=en_US.UTF-8

设置主机名:

1
2
vim /etc/hostname
# 写入主机名

设置root密码:

1
2
passwd
# 输入新密码

配置grub

1
pacman -S grub efibootmgr os-prober

为了让grub能探测双系统,修改/etc/default/grub

1
2
vim /etc/default/grub
# 取消注释GRUB_DISABLE_OS_PROBER=false

此时顺便解决键盘用不了的问题:

1
2
vim /etc/default/grub
# 启动参数加上i8042.dumbkbd

把grub安装到efi分区:

这里bootloader-id将会是在UEFI启动项设置里看到的名字。

1
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch-grub

生成grub配置:

确认一下os-prober有没有找到Windows。

1
grub-mkconfig -o /boot/grub/grub.cfg

结束安装之前装上NetworkManager

1
pacman -S networkmanager

重启,从硬盘启动进入新系统:

1
2
3
exit
umount -a
reboot

进入系统

配置网络

1
2
systemctl enable NetworkManager
systemctl start NetworkManager

通过NetworkManager的tui程序连wifi。

1
nmtui

创建用户

创建普通用户,放进wheel用户组以使用sudo:

1
useradd -m -G wheel $username

设置密码:

1
passwd $username

开启wheel用户组的sudo权限:

1
2
3
4
EDITOR=vim visudo
# 取消注释%wheel ALL=(ALL:ALL) ALL

# 取消注释%wheel ALL=(ALL:ALL) NOPASSWD: ALL可以让普通用户sudo时不用输密码

以下均在普通用户进行。

安装gnome

1
2
sudo pacman -S gdm
sudo pacman -S gnome

启动gdm服务:

1
sudo systemctl enable gdm

重启后进入gnome桌面。

蓝牙鼠标

安装蓝牙协议栈:

1
sudo pacman -S bluez bluez-utils

使蓝牙协议栈开机自启:

1
2
sudo vim /etc/bluetooth/main.conf
# 令AutoEnable=true

启动蓝牙服务:

1
2
sudo systemctl enable bluetooth
sudo systemctl start bluetooth

通过共享给蓝牙分配的KEY,解决双系统需要重新连接鼠标的问题。尝试将Windows下的key共享给Arch失败了,反向操作成功。

添加archlinuxcn源

1
2
3
4
# 添加到/etc/pacman.conf

[archlinuxcn]
Server = https://mirrors.nju.edu.cn/archlinuxcn/$arch

刷新源:

1
sudo pacman -Syyy

安装keyring:

1
sudo pacman -S archlinuxcn-keyring

使用aur

安装基本工具:

1
sudo pacman -S base-devel

安装yay:

1
2
3
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

中文字体

安装noto-fonts-cjk:

1
sudo pacman -S noto-fonts-cjk

/etc/fonts/conf.d/下创建64-language-selector-prefer.conf,把简中字体排到日文前面:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# /etc/fonts/conf.d/64-language-selector-prefer.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans CJK SC</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK JP</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Sans Mono CJK JP</family>
</prefer>
</alias>
</fontconfig>

更新字体缓存:

1
fc-cache -fv

可以通过fc-match -s | grep 'Noto Sans CJK'进行检查。

中文输入法

安装fcitx5和输入法引擎:

1
sudo pacman -S fcitx5-im fcitx5-chinese-addons

编辑/etc/environment

1
2
3
4
5
6
7
8
9
# /etc/environment

# 追加以下内容
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
INPUT_METHOD=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus

重启后打开Fcitx5 Configuration,把右边的简体中文输入法移过来。

对于gnome,安装gnome-shell-extension-kimpanel-git以在右上角显示输入法状态:

1
yay -S gnome-shell-extension-kimpanel-git

重启后执行:

1
gnome-extensions enable kimpanel@kde.org

声音

部分声卡需要安装sof-firmware驱动才能使用:

1
sudo pacman -S sof-firmware

显示

Intel核显驱动(TigerLake):

1
sudo pacman -S mesa vulkan-intel