Intro
之前用manjro+i3,勉强算是开箱即用,然而还是准备折腾arch。
安装archlinux
根据
中文安装指南
进行,只选择了重要的步骤。
启动到 live 环境
首先准备安装镜像、安装介质(U盘)
连接互联网
这里使用wifi连接,以太网请忽略这一步。
连接wifi可以使用iwd包的iwctl命令。
列出所有 WiFi 设备: [iwd]# device list
开始扫描网络: [iwd]# station device scan
列出所有可用的网络: [iwd]# station device get-networks
连接到一个网络:[iwd]# station device connect SSID
运行 ping archlinux.org
测试网络连接。
创建硬盘分区
参考分区方案示例
本次给EFI分了512M,给SWAP分了8G(8G内存),剩下给 /
挂载点。
格式化分区
参考,注意相应的文件系统
挂载分区
分别挂载主分区和EFI分区到 /mnt
和 /mnt/boot
上。
注意启用swap分区。
开始安装系统
运行
配置系统
生成fstab
chroot 到新安装的系统
注意是 arch-chroot
命令。
设置时区、区域和本地化设置
注意语言要选择英语 en_US.UTF-8
,中文无法显示。
创建 hostname 文件、设置 root 密码
!安装必要软软件包
一般来说需要安装
引导需要的包:
grub
os-prober
, 探测其他安装的OS,显示在grub菜单中。
efibootmgr
常用工具:
nano
/ vi
/ vim
sudo
(注意可以新建一个非root用户并且将之加入sudoers列表中,要修改列表,请用 visudo
命令以防sudoers列表出现问题导致系统问题)
网络连接
iw
, iwd
连接wifi
- 自动启动网络服务(否则DNS服务无法使用):
字体
此时请为图形界面新建一个非root用户!
{: .prompt-warning }
安装引导
grub-mkconfig
类似其他平台的 grub-update
的作用。
接下来
卸载挂载点,重启
此时一切顺利的话就可以引导进入新系统了。
配置系统
语言
确保 /etc/locale.gen
{: .filepath} 中的 zh_CN.UTF-8
项已经被取消注释。
运行
然后在 /etc/locale.conf
{: .filepath}写入
此时重启后输入 locale
命令应该可以看到 LANG
变量已经被设置为中文,如果不是:
{: .prompt-info }
在 /etc/environment
{: .filepath}写入
网络连接
此时有必要的软件包,可以在命令行连接wifi了,但是如果遇到了连接问题( ping
出错),请检查:
根据这里,将以下内容写入 /etc/iwd/main.conf
{: .filepath}。
{: .prompt-tip }
尝试启动网络服务
安装图形界面:Xorg和i3相关包
(其中 lightdm-gtk-greeter
)负责登录界面
安装终端(自行选择)
20240101更新:~/.config/alacritty/alacritty.yml
{: .filepath} 已经弃用,使用 alacritty migrate
迁移到 /home/flayed/.config/alacritty/alacritty.toml
{: .filepath}
{: .prompt-tip }
/home/flayed/.config/alacritty/alacritty.toml
{: .filepath} :
启动lightDM
此时进入图形界面,选择非root用户登录
参考
程序功能配置
安装AUR包管理器
使用 yay
包,这里我源码编译有点问题,直接使用了二进制包 https://aur.archlinux.org/yay-bin.git。
feh,i3lock-color,主题,图标主题
参考
文件管理器
设置为目录的默认打开方式
透明窗口混合器
参考
其他配置
zsh, oh-my-zsh
https://ohmyz.sh/#install
插件:
网络托盘图标
安装networkmanager包
其中 nm-applet
用于显示托盘图标
启动服务:
i3的config已经包含了以下内容来启动 NetworkManager
:
中文输入法
使用搜狗
i3配置中添加
此外在 /etc/environment
{: .filepath} 添加
输入法有托盘图标
{: .prompt-tip }
取消输入法浮动窗口阴影
首先使用picom默认配置
查找浮动窗口的类名:
得到类名sogoupinyin-service
修改~/.config/picom/picom.conf
{:.filepath},添加一行"class_g = 'sogoupinyin-service'"
消除菜单的透明边框阴影:
音量托盘图标
pavucontrol
控制音量
pasystray
托盘图标,在i3添加自启动
i3里已经有了音量Fn的绑定。
亮度
安装 xorg-xbacklight
或者 brightnessctl
包,效果基本相同。
安装 xmodmap
支持Fn键。
在i3配置里添加
其中按键的名称可以在 xmodmap -pke
的输出中查找。
状态栏
使用 polybar
,以及第三方主题,其中音量显示、亮度显示、电池显示、托盘图标的显示都需要额外配置。
主题内支持设置壁纸的同时设置相应的主题色(包括zsh主题色)。
鼠标放在滑块上滚动使用。
{: .prompt-tip }
触摸板
根据参考
安装触摸板驱动
把以下内容写入 /etc/X11/xorg.conf.d/30-touchpad.conf
{: .filepath }
这里 "lrm"
指的是1,2,3指轻触分别表示左键、右键、中键点击。
{: .prompt-tip }
接下来设置触摸板手势:
安装 fusuma
(AUR中ruby-fusuma)包和插件(AUR中ruby-fusuma-plugin-sendkey)用来捕获手势和发送按键。
这是我的配置 : ~/.config/fusuma/config.yml
其中 3
4
表示几根手指, swipe
pinch
表示 “扫” 和 “捏” 两个手势,至于按键绑定根据自己偏好,这里是用作切换窗口位置和放大/缩小。
启动服务:
功耗控制
根据参考
安装 TLP
包和 ui
启动服务
tlpui
打开UI控制台,我这里把 CPU_MAX_PERF_ON_BAT
设置为 30
提高续航,还有其他诸如降低cpu电压暂时没有搞。
系统快照
根据参考
使用 timeshift
运行 timeshift-gtk
启动UI,我选择了rsync备份,在1T的windows盘中分了128G的EXT4分区来备份。备份可以自动定时进行,每次仅仅占用1G左右,可以选择时时候复制用户文件。
截屏
在i3配置中添加
并且安装相应 xclip
, xdotool
, maim
包
分别作为复制/保存 全屏/窗口/区域截图的功能。
删除i3窗口边框
在i3配置中添加
鼠标指针
下载指针主题,在 lxappearance
中启用即可。
如果无法正常显示鼠标指针:
试着创建一个将 ~/.icons/default/cursors
{: .filepath}(假设为指定用户安装)指向 .local/share/icons/cursor_theme_name/cursors
{: .filepath}的符号链接然后再次重启 X。
参考
问题排查
- 如果在i3桌面上鼠标指针一直显示忙,在配置中所有
exec
加上--no-startup-id
参数
软件包列表
编辑器
Visual Studio Code
网络浏览器
Google Chrome
pdf阅读器
Okular
Office套件
Onlyoffice
远程桌面
Remmina
局域网文件分享
Landrop
bittorrent客户端
Qbittorrent Enhanced Edition
剪贴板历史
parcellite
蓝牙
https://wiki.archlinuxcn.org/wiki/蓝牙
驱动和实用程序
图形界面
在 ~/.config/i3/config
{: .filepath}:
自动锁定
xidlehook
~/.config/i3/config
{: .filepath}:
桌面通知
dunst
i3配置
测试通知
桌面组件
Conky
i3中:
配置 ~/.config/conky/conky.conf
{: .filepath}
see also:
https://conky.cc/variables#diskio
https://conky.cc/config_settings
自动休眠和合上盖子功能
/etc/systemd/logind.conf
{:.filepath}
这里不同的电源模式可以参考,可能不是每种该模式都被硬件支持。
最后
图片查看器
ristretto
鼠标设置
使用xinput,参考
或者使用xinput-gui包。
to-do list
剪贴板历史
蓝牙(blueman)
- 视频硬件解码
自动锁定
合上盖子
- 主题颜色
桌面组件
桌面通知