arch安装以及i3wm配置
配置:
intel
硬盘处理
lsblk 查看硬盘情况(sda 为机械硬盘,nvme0n1是固态,这里的sda 是u盘)
-
cgdisk /dev/nvme0n1
用于分区表编辑和管理的命令行工具,主要用于处理磁盘的分区表,可以使用
cgdisk
来创建新的GPT分区表,这将抹去旧的分区表和数据,所以务必谨慎操作ef00 boot
8200 swap
-
格式化硬盘
启动分区:
mkfs.fat -F32 /dev/nvme0n1p1
交换分区:
mkswap /dev/nvme0n1p2
启动交换分区
swapon /dev/nvme0n1p2
系统分区:
mkfs.ext4 /dev/nvme0n1p3 mkfs.ext4 /dev/nvme0n1p4
-
挂载分区
mount /dev/nvme0n1p3 /mnt
mkdir /mnt/boot mount /dev/nvme0n1p1 /mnt/boot
mkdir /mnt/home mount /dev/nvme0n1p4 /mnt/home
然后运行lsblk查看分区情况
设置pacman服务
通过https://archlinux.org/mirrorlist/ 查看镜像源
修改镜像源
vim /etc/pacman.d/mirrorlist
备份镜像源
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
更新镜像源
reflector --verbose --latest 15 --sort rate --save /etc/pacman.d/mirrorlist
pacman -Sy
安装基本系统以及固件
pacstrap -i /mnt linux-headers linux-firmware base base-devel vim intel-ucode
pacstrap /mnt base base-devel linux linux-firmware dhcpcd vim reflector
进入新系统
genfstab -U -p /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab
arch-chroot /mnt
pacman -Syy
设置时区 语言
时区
ls -s /usr/share/zoneinfo/ #点tab
ls -s /usr/share/zoneinfo/Asia/ #以此类推
ln -s /usr/share/zoneinfo/Asia/Shanghai > /etc/localtime
hwclock --systohc
语言设置
vim /etc/locale.gen
zh_CN.UTF-8 UTF-8 en_US.UTF-8 UTF-8 #选这两个
locale-gen
设置默认语言并更新
[root@archiso /]# echo LANG=en_US.UTF-8 > /etc/locale.conf
[root@archiso /]# vim /etc/locale.conf
[root@archiso /]# export LANG=en_US.UTF-8
网络设置
[root@archiso /]# vim /etc/hostname
[root@archiso /]# vim /etc/hosts
添加用户
useradd -m -g users -G wheel,storage,power -s /bin/bash x14n
EDITOR=vim visudo
在文件中取消%wheel ALL=(ALL:ALL) 的 #
添加Defaults rootpw
安装系统引导工具grub
, 并生成引导文件
pacman -S os-prober ntfs-3g grub efibootmgr
# 这里的/dev/sda1是前面boot所在的分区
#grub-install --efi-directory=/mnt/boot/efi --bootloader-id=Arch --recheck
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
# 生成默认配置文件
grub-mkconfig -o /boot/grub/grub.cfg
安装基础包
pacman -S networkManager
systemctl disable netctl
systemctl enable NetworkManager
pacman -S mtools dosfstools bluez bluez-utils cups xdg-utils xdg-user-dirs alsa-utils
pulseaudio pulseaudio-bluetooth reflector openssh
pacman -S xf86-video-intel mesa lib32-mesa
基础配置
修改**/etc/pacman.conf**,在文件最后添加如下内容:
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
然后是更新源及安装yay:
pacman -Syyu //更新源,期间会自动下载archlinuxcn的源数据库
pacman -S yay //安装yay
pacman -S archlinuxcn-keyring //archlinuxcn相关GPG key,如果不安装这个包会导致后续部分包无法成功安装
i配置
pacman -S xorg-server
//sddm安装,如果通过startx命令登录i3wm也可不安装此项
pacman -S sddm
//i3wm安装
pacman -S i3wm
//或者安装i3gaps,二选一
yay -S i3-gaps
//picom、rofi及feh
pacman -S rofi picom feh
终端应用
pacman -S alacritty
安装字体文件
pacman -S noto-fonts-cjk powerline-fonts wqy-microhei adobe-source-code-pro-fonts
yay -S ttf-apple-emoji
安装字体之后,可以通过如下命令查看系统中安装的字体信息:
fc-cat | less
安装完成之后启动SDDM,应该就能通过图形化界面进行登录了:
systemctl enable sddm
systemctl start sddm
i3wm配置
i3wm默认的快捷键我不打算一一列出了,查看i3wm的默认配置文件就能看到,i3wm默认配置文件地址:
~/.config/i3/config
如果此配置文件不存在,或者被修改出错,可以通过如下命令复制一份新的:
mkdir ~/.config/i3
cp /etc/i3/config ~/.config/i3/config
i3wm的配置文件分为两步,分别是修改原有配置及新增配置。
先是修改原有配置,下列部分是删除或者注释:
#font pango:monospace 8
#bindsym $mod+d exec --no-startup-id dmenu
#bar {
# status_command i3status
#}
然后是新增部分配置:
//设置字体及字体大小
font pango:Source Code Pro 12,DejaVu Sans Mono 12
//设置$MOD+d为启动rofi
bindsym $mod+d exec --no-startup-id "rofi -modi drun,run -show drun"
//启动picom
exec --no-startup-id picom -b
//使用feh设置壁纸,注意壁纸文件必须存在且路径正确
exec --no-startup-id feh --bg-scale ~/zocoxx/wallpaper.jpeg
//锁屏,因Win+L快捷键在i3wm默认被占用,我设置的是$MOD+Ctrl+l为锁屏快捷键
bindsym $mod+Ctrl+l exec --no-startup-id i3lock
//去除窗口的标题栏,有利有弊,好处是窗口少了额头,坏处是去除标题栏之后部分窗口无法进行鼠标拖动
for_window [class="^.*"] border pixel 0
//设置边框为1像素
new_window pixel 1
//如果安装了输入法,可以使用此命令进行启动输入法
exec --no-startup-id fcitx &
配置完成之后,按$MOD+Shift+r可以快速重启i3wm,如果配置没问题的话,可以看到新的效果了。
alacritty配置
选择alacritty就是看重其可定制,自然不会选择默认配置了。
alacritty可选配置文件路径有很多,为了方便,我选择将配置文件放到~/.config目录里面。完整配置文件内容如下:
# ~/.config/alacritty.yml
font:
normal:
family: Source Code Pro
bold:
family: Source Code Pro
italic:
family: Source Code Pro
size: 12
window:
opacity: 0.7
env:
TERM: xterm-256color
我选择配置alacritty使用Source Code Pro字体,且字号大小为12。
特别提醒一下,alacritty背景透明度设置不是网络流传的window.opacity或者background_opacity,要设置透明度的话建议参考我上述的格式。
保存即可看到效果。
polybar设置及启动
polybar需要有默认的配置文件才能启动,所以,创建目录并设置配置文件:
mkdir ~/.config/polybar
cp /etc/polybar/config.ini ~/.config/polybar
不知道是polybar更新版本之后配置文件名称改变还是网上的教程以讹传讹,很多都不带**.ini**后缀,这里建议带上。
上述config.ini默认包含了一个example的配置,命令行执行如下命令即可看到效果:
polybar example
要在启动i3wm之后默认启动polybar,需要有个启动脚本,文件名称、路径及内容如下:
# ~/.config/polybar/launch.sh
#!/bin/bash
# 终端可能已经有在运行的实例
killall -q polybar
# 等待进程被终止
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
# 运行Polybar,使用默认的配置文件路径 ~/.config/polybar/config.ini
polybar example &
echo "Polybar launched..."
然后给与启动脚本可执行权限:
chmod +x ~/.config/polybar/launch.sh
然后i3wm配置文件新加一行:
# ~/.config/i3/config
exec --no-startup-id ~/.config/polybar/launch.sh
sudo systemctl restart display-manager
i3-msg restart
安装完成后配置
xorg-xrandr 分辨率调整
xrandr --output your_display_name --mode 1600x900
xrandr --output eDP1 --scale 1.25x1.25
安装中文输入法
配置中文输入法首先需要安装 fcitx 包与 fcitx-im 集合包,还有配置工具 fcitx-configtool:
1 | $ sudo pacman -S fcitx fcitx-im fcitx-configtool |
---|---|
然后编辑 /etc/profile 文件,末尾加入:
1234 | # Fcitxexport GTK_IM_MODULE=fcitxexport QT_IM_MODULE=fcitxexport XMODIFIERS="@im=fcitx" |
---|---|
再到Fcitx#中文选择一个中文输入法包安装:
1 | $ sudo pacman -S fcitx-googlepinyin |
---|---|
zsh
1、安装zsh
sudo pacman -S zsh
2、更改默认终端
chsh -s /bin/zsh
3、安装oh-my-zsh-git
sudo pacman -S oh-my-zsh-git
4、默认配置
cp /usr/share/oh-my-zsh/zshrc ~/.zshrc
5、安装插件 跳转目录、命令高亮、自动建议补全
sudo pacman -S autojump zsh-syntax-highlighting zsh-autosuggestions
oh-my-zsh 找不到插件路径,做下链接 没有目录自己建 mkdir -p /usr/share/oh-my-zsh/custom/plugins/
sudo ln -s /usr/share/zsh/plugins/zsh-syntax-highlighting /usr/share/oh-my-zsh/custom/plugins/
sudo ln -s /usr/share/zsh/plugins/zsh-autosuggestions /usr/share/oh-my-zsh/custom/plugins/
6、配置 ~/.zshrc
plugins=(
git
autojump
zsh-syntax-highlighting
zsh-autosuggestions
)
Xresources
sddm
https://github.com/MarianArlt/sddm-chili
neovim
https://taoshu.in/vim/go-vim.html
HIDPI屏幕
polybar
使用github主题hack
mpd brightness volume speed battery temperature
htop资源监控
管理配置
rander 文件窗口
https://wiki.archlinux.org/title/ranger
-
生成配置文件
ranger --copy-config=all
了解一些基本的 python 知识可能对定制 ranger 会有帮助。
rc.conf
- 选项设置和快捷键commands.py
- 能通过:
执行的命令rifle.conf
- 指定不同类型的文件的默认打开程序。scope.sh
- 文件预览相关配置
-
图片预览功能
pacman -S w3m #图片预览工具
-
移动到回收站
如果想添加一个把文件移动到目录
~/.local/share/Trash/files/
的快捷键DD
,把以下这一行添加到~/.config/ranger/rc.conf
:map DD shell mv %s /home/${USER}/.local/share/Trash/files/
-
关联文件打开应用
-
文件解压
锁屏电源
rofi
设置默认应用
粘贴板copyq
音量调节ALSA
sudo pacman -S alsa-utils
sudo pacman -S alsa-plug
sudo pacman -S pulseaudio-alsa
sudo pacman -S pavucontrol-qt
sudo pacman -S pavucontrol
启用:amixer sset Master unmute
sudo lspci -v
lspci | grep Audio
mpd音乐播放器
常用快捷键
q : 退出 ranger
R : 重新刷新目录
S : 执行 shell 命令
: 或者 ; : 控制台
W : 显示日志
k : 向上
j : 向下
h : 向左
l : 向右
g : 到顶部
G : 到底部
J : 半页向下
K : 半页向上
gh : 相当于 cd ~
ge : 相当于 cd /etc
gu : cd /usr
dd : 剪切
yy : 复制
pp : 粘贴
截图工具
多屏幕显示
xrandr --output HDMI-1 --auto --left-of DP-1
在 i3wm 中配置多屏显示通常需要一些特定的设置。以下是在 Arch Linux 上配置 i3wm 的多屏显示的一般步骤:
-
检测和识别显示器: 打开终端并运行以下命令,以检测和识别连接的显示器:
xrandr
这将列出所有已连接的显示器以及它们的名称(例如:
HDMI-1
、DP-1
等)。配置显示器布局: 使用
xrandr
命令来配置显示器布局。例如,如果你想将两个显示器设置为左右扩展模式,可以运行:xrandr --output HDMI-1 --auto --left-of DP-1 打开 `~/.config/i3/config` 文件,添加以下行来配置多屏显示:
exec --no-startup-id xrandr --output HDMI-1 --auto --left-of DP-1
exec --no-startup-id xrandr --output HDMI-1 --auto --right-of DP-1
-
设置屏幕
xrandr --output HDMI-1 --mode 1920x1080 --scale 0.95x0.95