ArchLinux 安裝
网络配置
首先检查网络连接状态, 查看网络连接, 如出现 ip 地址则说明连接
ip a
ping 一下网址看是否正常连接
ping baidu.com
连接 wifi
# 进入 wifi 连接模式
iwctl
# 连接你的 wifi, 回车后输入 wifi 密码后再次回车
station wlan0 connect <你的 wifi 名称>
# 退出
exit
同步时间
timedatectl set-ntp true
硬盘分区
列出详细的硬盘信息, 记住你的设备名称, 我这边是 /dev/nvme0n1
lsblk -pf
分区, 上下左右进选择New -> Partition size: 1g -> Type -> EFI SystemNew -> Partition size: <你剩下的所有空间> -> Write -> Quite
cfdisk /dev/nvme0n1
再次列出详细的硬盘信息
lsblk -pf
# NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% # MOUNTPOINTS
# /dev/nvme0n1
# ├─/dev/nvme0n1p1 vfat FAT32 EFF6-F931 659.2M #35% /boot
# └─/dev/nvme0n1p2 btrfs 14ea5817-05e1-4798-bdec-8f98f9cb0a5a 206.4G #13% /home
格式化启动分区
mkfs.fat -F 32 /dev/nvme0n1p1
格式化 BTRFS 根目录
mkfs.btrfs /dev/nvme0n1p2
创建 BTRFS 分区子卷, 先挂载根分区, 再创建子卷
mount -t btrfs -o compress=zstd /dev/nvme01n1p2 /mnt && \
btrfs subvolume create /mnt/@ && \
btrfs subvolume create /mnt/@home && \
btrfs subvolume create /mnt/@swap
取消挂载
umount /mnt
正式挂载
mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p2 /mnt && \
mount --mkdir -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p2 /mnt/home && \
mount --mkdir -t btrfs -o subvol=/@swap,compress=zstd /dev/nvme0n1p2 /mnt/swap && \
mount --mkdir /dev/nvme01np1 /mnt/boot
复查挂载 /mnt /mnt/home /mnt/swap /mnt/boot 存在即可
df -h
更新密钥
pacman -Sy archlinux-keyring
安装系统
pacstrap -K /mnt base base-devel linux linux-firmware btrfs-progs
安装必要软件, 若为 AMD 则将 intel-ucode 换为 amd-ucode
pacstrap /mnt networkmanager nano sudo intel-ucode
创建 swap 文件, 这边以 RedHat 官网文档为参考
| 系统中的 RAM 量 | 推荐的 swap 空间 | 如果允许休眠则推荐使用 swap 空间 |
|---|---|---|
| ⩽ 2 GB | RAM 量的 2 倍 | RAM 量的 3 倍 |
| > 2 GB – 8 GB | 与 RAM 量相等 | RAM 量的 2 倍 |
| > 8 GB – 64 GB | 至少 4 GB | RAM 量的 1.5 倍 |
| > 64 GB | 至少 4 GB | 不推荐休眠 |
我的电脑内存为 16GB 但这边我不需要休眠所以只设置 8GB
btrfs filesystem mkswapfile --size 8g --uuid clear /mnt/swap/swapfile
启动 swap
swapon /mnt/swap/swapfile
生成 fstab
genfstab -U /mnt > /mnt/etc/fstab
进入系统
arch-chroot /mnt
设置主机名
nano /etc/hostname
设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
同步时间
hwclock --systohc
设置本地化
nano /etc/locale.gen
- #en_US.UTF-8 UTF-8
+ en_US.UTF-8 UTF-8
- #zh_CN.UTF-8 UTF-8
+ zh_CN.UTF-8 UTF-8
生成区域设置
locale-gen
编辑配置文件
nano /etc/locale.conf
+ LANG=en_US.UTF-8
设置 root 密码, 密码不会显示
passwd
安装引导程序
pacman -S grub efibootmgr os-prober
安装 grub
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=<你想要的任何名字>
编辑 grub, 若为 AMD 则将 iTCO_WDT 换为 sp5100_tco
nano /etc/default/grub
- GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quit"
+ GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog modprobe.blacklist=iTCO_WDT"
- #GRUB_DISABLE_OS_PROBER=false
+ GRUB_DISABLE_OS_PROBER=false
生成 grub 配置文件
grub-mkconfig -o /boot/grub/grub.cfg
退出 chroot
exit
重启
reboot
先联网
systemctl enable --now NetworkManager
无线网链接
nmcli dev wifi connect <你的 wifi 名称> password <你的 wifi 密码>
ping 一下确认网络已连接
ping baidu.com
Niri 安装和配置
先上成品图 
创建新用户
基本安装和配置
创建新用户
sudo useradd -m -G wheel -s /bin/bash 你的用户名
设置密码
sudo passwd 你的用户名
修改 visudo 默认编辑器, 会用 vi/vim 可跳过这一步
sudo nano ~/.bashrc
VISUAL="nano" ; export VISUAL
EDITOR="$VISUAL" ; export EDITOR
配置 sudo 权限
source ~/.bashrc && sudo visudo
- # %wheel ALL=(ALL) ALL
+ %wheel ALL=(ALL) ALL
国内环境优先配置镜像源, 这边推荐 tuna
sudo echo -e "Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/\$repo/os/\$arch" > /etc/pacman.d/mirrorlist
更新软件包缓存
sudo pacman -Syyu
安装必要的包, 根据自己需求做删减
sudo pacman -S --needed fuzzel mako niri xwayland-satellite base-devel git yazi fastfetch ffmpeg p7zip nano dms-shell noto-fonts-cjk wqy-microhei wqy-zenhei vlc vlc-plugins-all
安装 paru
git clone https://aur.archlinux.org/paru.git && cd paru && makepkg -si
部分耳熟能详的包名不会列在下面了
| 软件名 | 简述 |
|---|---|
| fuzzel | 应用程序启动器 |
| mako | 轻量级通知管理器 |
| niri | 平铺式窗口管理器 |
| xwayland-satellite | x11 应用的 Wayland 桥接工具 |
| yazi | 文件管理 |
| fastfetch | 系统信息获取工具 |
| alacritty-graphics | 现代终端模拟器 |
| tlp | 电源管理工具 |
先国际惯例 fastfech 一下
-` lumorian@Lumorian-Dell
.o+` ----------------------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: G3 3500
`+oooooo: Kernel: Linux 6.12.58-1-lts
-+oooooo+: Uptime: 9 days, 11 hours, 27 mins
`/:-:++oooo+: Packages: 912 (pacman), 9 (flatpak)
`/++++/+++++++: Shell: bash 5.3.3
`/++++++++++++++: Display (AUOED8F): 1920x1080 in 15", 120 Hz [Built-in]
`/+++ooooooooooooo/` Terminal: /dev/pts/0
./ooosssso++osssssso+` CPU: Intel(R) Core(TM) i5-10300H (8) @ 4.50 GHz
.oossssso-````/ossssss+` GPU 1: NVIDIA GeForce GTX 1650 Mobile / Max-Q [Discrete]
-osssssso. :ssssssso. GPU 2: Intel UHD Graphics @ 1.05 GHz [Integrated]
:osssssss/ osssso+++. Memory: 6.02 GiB / 15.42 GiB (39%)
/ossssssss/ +ssssooo/- Swap: 0 B / 8.00 GiB (0%)
`/ossssso+/:- -:/+osssso+- Disk (/): 51.18 GiB / 237.47 GiB (22%) - btrfs
`+sso+:-` `.-/+oso: Local IP (Mihomo): 198.18.0.1/30
`++:. `-/+/ Battery (DELL M4GWP06): 100% [AC Connected]
.` `/ Locale: zh_CN.UTF-8
启用 niri 和 mako
systemctl --user add-wants niri.service mako.service
配置 dms
sudo nano ~/.config/niri/config.kdl
在无任何{}内写入
spawn-at-startup "dms" "run"
配置 nano
sudo nano /etc/nanorc
set autoindent
set tabsize 4
set tabstospaces
set linenumbers
set constantshow
set mouse
set softwrap
bind M-L linenumbers main
set titlecolor bold,white
set numbercolor cyan
set keycolor green
set functioncolor yellow
set statuscolor cyan
include "/usr/share/nano/*.nanorc"
include "/usr/share/nano/extra/*.nanorc"
配置 niri
nano ~/.config/niri/config.kdl
最顶部添加, 不要放进任何{}内
prefer-no-csd
\\ 圆角配置段
window-rule {
geometry-corner-radius 12
clip-to-geometry true
}
安装和配置 alacritty
通过 aur 安装 alacritty-graphics, 不选择 alacritty 是因为 yazi 的预览图片功能在 alacritty 会有问题
paru -S alacritty-graphics
nano ~/.config/niri/config.kdl
window-rule {
match app-id="Alacritty"
draw-border-with-background false
opacity 0.8
}
安装和配置 rime
sudo pacman -S fcitx5 fcitx5-rime
配置主题, 想自己搭配的也可以试试这个网站
paru -S fcitx5-skin-ori-git
默认简体中文 + 半角标点
touch ~/.local/share/fcitx5/rime/luna_pinyin.custom.yaml && nano ~/.local/share/fcitx5/rime/luna_pinyin.custom.yaml
patch:
switches:
- name: simplification
reset: 1
states: [ 漢字, 汉字 ]
- name: full_shape
reset: 0
states: [ 半角, 全角 ]
punctuator:
half_shape:
"!": "!"
"\"": "\""
"#": "#"
"$": "$"
"%": "%"
"&": "&"
"'": "'"
"(": "("
")": ")"
"*": "*"
"+": "+"
",": ","
"-": "-"
".": "."
"/": "/"
":": ":"
";": ";"
"<": "<"
"=": "="
">": ">"
"?": "?"
"@": "@"
"[": "["
"\\": "\\"
"]": "]"
"^": "^"
"_": "_"
"`": "`"
"{": "{"
"|": "|"
"}": "}"
"~": "~"
full_shape:
"!": "!"
"\"": """
"#": "#"
"$": "$"
"%": "%"
"&": "&"
"'": "'"
"(": "("
")": ")"
"*": "*"
"+": "+"
",": ","
"-": "-"
".": "。"
"/": "/"
":": ":"
";": ";"
"<": "<"
"=": "="
">": ">"
"?": "?"
"@": "@"
"[": "["
"\\": "\"
"]": "]"
"^": "^"
"_": "_"
"`": "`"
"{": "{"
"|": "|"
"}": "}"
"~": "~"
使配置生效
方法 1: 通过 Fcitx5 界面
- 右键点击 Fcitx5 输入法图标
- 选择
重新部署或Rime→重新部署
方法 2:
rime_deployer --build ~/.local/share/fcitx5/rime ~/.local/share/fcitx5/rime/build
安装和配置 flameshot
sudo pacman -S flameshot
nano ~/.config/niri/config.kdl
\\ 设置 flameshot 快捷键 -c 参数是让你截取完后按下 enter 就能直接复制
binds {
Alt+A { spawn "flameshot" "gui" "-c"; }
}
安装和配置 tlp, 笔记本专用
sudo pacman -S tlp
sudo nano /etc/tlp.d/00-template.conf
START_CHARGE_THRESH_BAT0="70"
STOP_CHARGE_THRESH_BAT0="80"
\\ 如果你有第二块电池的话
START_CHARGE_THRESH_BAT1="70"
STOP_CHARGE_THRESH_BAT1="80"
安装配置 ly
sudo pacman -S ly
systemctl enable ly@tty2.service && systemctl disable getty@tty2.service
设置主题, 这边推荐我很喜欢的主题, 点击这里下载
sudo nano /etc/ly/config.ini
- animation = none
+ animation = dur_file
- dur_file_path = /etc/ly/example.dur
+ dur_file_path = /path/to/your/durl/file
安装配置 OBS
sudo pacman -S obs-studio
安装音视频固件
sudo pacman -S pavucontrol sof-firmware alsa-ucm-conf alsa-firmware
安装, 启动 Pipewire
sudo pacman -S pipewire wireplumber pipewire-pulse pipewire-alsa pipewire-jack
systemctl --user --now enable pipewire pipewire-pulse wireplumber
sudo nano ~/.config/niri/config.kdl
在无任何{}内写入
spawn-sh-at-startup "dbus-update-activation-enviroment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=niri & /usr/lib/xdg-desktop-portal-gnome"