1. 制作装机工具 Ventoy
2. 下载 archlinux 镜像
3. 选择U盘启动 Ventoy
4. 步骤
## 更新系统时间
timedatectl set-ntp true
## 连接 WIFI 步骤,直连网线可跳过
# 1. 查询设备列表
iwctl device list
# 2. 扫描 WIFI 列表,这里 wlan0 根据上一步查询结果修改
iwctl station wlan0 scan
# 3. 获取扫描到的 WIFI 列表
iwctl station wlan0 get-networks
# 4. 连接 WIFI,这里的 SSID 换成 WIFI 名称,然后输入 WIFI 密码
iwctl station wlan0 connect SSID
## 查看磁盘分区
fdisk -l
## 创建磁盘磁盘
fdisk /dev/nvme0n1
## 输入 n 创建 300M 作为 boot 分区,挂载点 /boot
## 输入 n 创建 剩余磁盘或者部分空间 作为根分区,挂载点 /
## 格式化分区
mkfs.fat -F 32 /dev/nvme0n1p1
mkfs.ext4 /dev/nvme0n1p2
## 挂在磁盘分区
mount /dev/nvme0n1p2 /mnt
mount --mkdir /dev/nvme0n1p1 /mnt/boot
# 设置国内源,添加在最前面 Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
vim /etc/pacman.d/mirrorlist
## 安装 Linux 内核、固件、基础包
pacstrap /mnt base linux linux-firmware
## 生成文件系统信息
genfstab -U /mnt >> /mnt/etc/fstab
# 切换根目录
arch-chroot /mnt
# 设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 生成硬件时钟
hwclock --systohc
# 修改文件,去掉 en_US.UTF-8 UTF-8 注释
pacman -S vim
vim /etc/locale.gen
# 执行初始化系统语言
locale-gen
# 设置语言
touch /etc/locale.conf
echo LANG=en_US.UTF-8 > /etc/locale.conf
# 设置主机名称,自定义 name
touch /etc/hostname
echo name > /etc/hostname
# 执行
mkinitcpio -P
# 设置 root 用户秘密
passwd
# 创建新用户,添加 sudo 权限
pacman -S sudo
useradd -m -G wheel -s /bin/bash [username]
passwd [username]
chmod u+w /etc/sudoers
vim /etc/sudoers
# 去掉这行注释 #%wheel ALL=(ALL) ALL
chmod u-w /etc/sudoers
# AMD 处理器
pacman -S amd-ucode
# Intel 处理器
pacman -S intel-ucode
# 安装 Noto 字体
pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji
# 桌面环境二选一
############### GNOME ###############
pacman -S gnome gnome-tweaks
systemctl enable gdm
################ KDE ################
pacman -S plasma plasma-wayland-session konsole dolphin
systemctl enable sddm
#####################################
# 安装 NetWorkManager 支持在设置配置网络
pacman -S networkmanager
systemctl enable NetworkManager
# 安装 bluez 支持在设置配置蓝牙
pacman -S bluez bluez-utils
systemctl enable bluetooth
# 如果遇到连接蓝牙音箱匹配失败,可尝试安装
pacman -S pulseaudio-bluetooth
# 声卡驱动
pacman -S alsa-utils
# 安装 grub 引导
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch
grub-mkconfig -o /boot/grub/grub.cfg
# 如遇到其他问题,可以查看 https://wiki.archlinux.org/title/installation_guide
5. Gnome 插件
a. 托管图标
AppIndicator and KStatusNotifierItem Support
b. 透明导航栏
Transparent Top Bar
c. Dock 栏目
Dash to Dock
7. 触摸板手势
# wayland 默认支持三指切换工作区
# x11 可以通过安装 touchegg 和插件 x11-gestures 支持三指切换工作区
# 插件链接 https://extensions.gnome.org/extension/4033/x11-gestures
sudo pacman -S touchegg
sudo systemctl start touchegg
sudo systemctl enable touchegg
8. 安装后配置
更新本地数据包
sudo pacman -Syy
添加 archlinux cn 源
sudo vim /etc/pacman.conf
>>
[archlinuxcn]
SigLevel = Optional TrustedOnly
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
安装 archlinuxcn-keyring 包导入 GPG key
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring
安装 yay
sudo pacman -S yay
zsh 配置
sudo pacman -S zsh
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-history-substring-search ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-history-substring-search
# 修改配置
# ZSH_CUSTOM=~/.oh-my-zsh/custom
# plugins=(git zsh-autosuggestions zsh-syntax-highlighting zsh-history-substring-search)
vim ~/.zshrc
输入法 fcitx5-rime
sudo pacman -S fcitx5-rime
sudo pacman -S fcitx5-qt # 对 Qt 程序的支持
sudo pacman -S fcitx5-gtk # 对 GTK 程序的支持,比如 google-chrome
sudo pacman -S fcitx5-configtool # 安装可视化配置界面
# wayland 最新 gnome46 不需要配置
vim ~/.pam_environment
XMODIFIERS DEFAULT=@im=fcitx
# X11
vim ~/.xprofile
export QT_IM_MODULE=fcitx
export GTK_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
# 安装输入法主题,这个好看
yay -S fcitx5-breeze
# 如遇到其他问题,可以查看 https://wiki.archlinux.org/title/Fcitx5
WezTerm 终端
# 安装 wezterm
pacman -S wezterm
# 安装 FiraCode Nerd Font 用作终端字体
pacman -S ttf-firacode-nerd
# 配置内容
vim ~/.wezterm.lua
############################### 参考配置 #################################
local wezterm = require 'wezterm'
local act = wezterm.action
return {
-- 通用配置
check_for_updates = false,
max_fps = 165,
initial_rows = 35,
initial_cols = 120,
-- 字体配置
font = wezterm.font_with_fallback({
"FiraCode Nerd Font Mono",
}),
-- 颜色主题(内置 Tokyo Night)
color_scheme = "Tokyo Night",
colors = {
tab_bar = {
background = "#1a1b26",
active_tab = {
bg_color = "#414868",
fg_color = "#c0caf5",
},
},
},
-- 背景效果(需要图形后端支持)
window_background_opacity = 0.8,
text_background_opacity = 0.9,
macos_window_background_blur = 20,
-- 扩展建议
-- 添加在配置文件中可启用:
enable_wayland = true,
warn_about_missing_glyphs = false,
scrollback_lines = 10000,
adjust_window_size_when_changing_font_size = false,
}
#######################################################################
8. 常用软件安装
# chrome
yay -S google-chrome
# 启用 Wayland 支持,Gnome46 不需要配置
# 浏览器输入 chrome://flags 修改 Preferred Ozone platform 选择 Wayland
# 编辑 /usr/share/applications/google-chrome.desktop 在 Exec=/usr/bin/google-chrome-stable 后添加
# --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime
# 微信
yay -S wechat-universal-bwrap
# 添加输入法支持
# 编辑 /usr/share/applications/wechat-universal.desktop 找到 Exec=wechat-universal 改为 Exec=env QT_IM_MODULE=fcitx wechat-universal
# wps
yay -S wps-office
yay -S ttf-wps-fonts
# vscode
yay -S visual-studio-code-bin
# 启用 Wayland 支持,否则在 Wayland 模式下窗口经常出现闪烁的现象,Gnome46 不需要配置
# 编辑 /usr/share/applications/code.desktop 在 Exec=/usr/bin/code --unity-launch 后添加
# --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime
# baidunetdisk
yay -S baidunetdisk-bin
# netease-cloud-music
yay -S netease-cloud-music
# qtcreator
sudo pacman -S qtcreator
# cuda
sudo pacman -S cuda
sudo pacman -S cudnn
# docker
sudo pacman -S docker
-> start
sudo systemctl start docker
-> enable
sudo systemctl enable docker
-> remove sudo
sudo gpasswd -a ${USER} docker
-> logout
# 支持跨平台运行容器
sudo pacman -S qemu-user-static qemu-user-static-binfmt
# gimp
sudo pacman -S gimp
# postman
sudo pacman -S postman-bin
# 基础开发环境
sudo pacman -S base-devel
# mariadb
sudo pacman -S mariadb
sudo mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
sudo systemctl start mariadb
su
mysql
> use mysql;
> SET password=PASSWORD('xxxxxx');
> FLUSH PRIVILEGES;
# 向日葵 --远程桌面
yay -S sunloginclient
sudo systemctl start runsunloginclient.service
# 版本降级 downgrade
sudo pacman -S downgrade
# virtualbox 二选一选 arch 版本
sudo pacman -S virtualbox
sudo pacman -S linux-headers virtualbox-guest-iso virtualbox-guest-utils
sudo /sbin/rcvboxdrv setup