0%

Arch安装Dwm

1.前言

你需要确保你已经安装好了 Arch 或其他发行版的 Linux,并且已经接入互联网、配置好了你的 pacman.confmirrorlist

Tips: 如果您已接触过其他桌面管理器,可直接跳转至安装

2.安装 Xorg

Xorg (通常简称为 X )是 Linux 用户中最流行的显示服务器。 它无处不在,使其成为 GUI 应用程序永远存在的必要条件,从而导致大多数发行版的大量采用。wiki
xorg 是 dwm 乃至大多数桌面环境的基础(hyprrland 除外).

1
sudo pacman -S xorg xorg-server xorg-apps

xorg-apps 中包括了很多有用的工具,例如xrandrxpropxmodmapxsetroot

3.驱动安装

  1. 显卡
  • intel xf86-video-intel
  • amd xf86-video-amdgpu
  • nvidia nvidia-dkms
  1. 输入设备
  • xf86-input-libinput
  • 触摸板xf86-input-synaptics

这是配置均可在/etc/X11/xorg.conf.d/下配置,细见xorg wiki,根据输入设备分类,查看 wiki 进行配置

默认可不配置,在启动后发现设备不可用再配置也可

4.安装

4.1 安装 Dwm

Tips: 如果你安装的过程中需要大量使用 github 或国外的资源,建议先安装并配置好系统代理.

  • 从 suckless.org 从拉取最新的 dwm
  • 使用现成的githubgitee

因为我的现成的,所以我选择现成的.如果你一次接触 Dwm 或平铺式窗口管理器,建议使用最新的 Dwm,然后去安装补丁,或自主修改,虽然使用过程会曲折一些,但你会更加得心应手

  1. 拉取 Dwm
1
2
3
git clone https://github.com/BYT0723/dwm.git
# 无法访问github的朋友可
git clone https://gitee.com/BYT0723/dwm.git
  1. 编译安装

Tips: 此步操作需要make,如果没有的朋友可使用包管理工具进行安装

1
2
cd dwm
sudo make clean install

dwm 将会被安装到/usr/local/bin/

4.2 终端安装

1
2
3
4
5
6
git clone https://github.com/BYT0723/st.git
# 无法访问github的朋友可
git clone https://gitee.com/BYT0723/st.git

# 以及
sudo pacman -S alacritty

共安装了两个终端stalacritty,st 和 dwm 更配,但最令人窒息的就是窗口大小改变时内容会丢失;alacritty 是 rust 编写的,并使用了 gpu 加速,速度更快.
在我的 Dwm 配置中 st 提供浮动终端,而 alacritty 供日常使用。alacritty 没有连字功能,st 有连字功能.

4.3 脚本安装

Dwm 中涉及较多的 shell 脚本,当然还有其他实现方法,各位可自行探索

1
2
3
git clone https://github.com/BYT0723/scripts.git ~/.dwm
# 无法访问github的朋友可
git clone https://gitee.com/BYT0723/scripts.git ~/.dwm

重点:查看~/.dwm/README.md, 安装好所有需要的依赖和字体等,会让你有一个较好的启动体验

5.启动

以下两种任选其一

5.1 使用 startx

1
2
3
4
# 如果你的~/.xinitrc文件不存在或内容为空
echo "exec dwm >> ~/.dwm.log" > .xinitrc
# 否则
echo "exec dwm >> ~/.dwm.log" >> .xinitrc

之后在$HOME目录下执行startx即可

5.2 使用启动管理器

经过本人使用,双显卡用户使用 optimius-manager 配合启动管理器效果更佳. 配置更轻便简单

  1. 安装 lightdm
1
sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-setting
  1. 配置 lightdm

配置 greeter,看清,是[Seat:*]下的配置,将对应的配置项修改为如下值

1
2
[Seat:*]
greeter-session=lightdm-gtk-greeter
  1. 添加 Dwm

将如下如内容添加到/usr/share/xsessions/dwm.desktop中并保存

1
2
3
4
5
6
7
[Desktop Entry]
Type=XSession
Exec=/usr/local/bin/dwm
TryExec=/usr/local/bin/dwm
DesktopNames=Dwm
Name=Dwm
Comment=Dynamic Window Manager
  1. 启动
1
2
3
4
5
# 开机启动
sudo systemctl enable lightdm
# 启动
sudo systemctl start lightdm

这样你就可看到管理器界面,登录即可进入 Dwm

6. 其他配置(可选)

6.1 配置xorg的keymap映射

编辑/etc/X11/xorg.conf.d/00-keyboard.conf文件,如果文件不存在则创建

1
2
3
4
5
6
7
8
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "us"
Option "XkbModel" "pc104"
Option "AutoRepeat" "250 50"
Option "XkbOptions" "caps:swapescape,altwin:swap_lalt_lwin"
EndSection

解释:

  • AutoRepeat设置触键频率
  • XkbOptions设置键盘键位切换,其中caps:swapescape代表交换大小写锁定和Esc, altwin:swap_lalt_lwin代表交换Logo键(Win)和左Alt键,
    具体其他键位可查看/usr/share/X11/xkb/rules/base.lst

6.2 配置系统代理

ArchLinux系统代理, 如果各位有其他的更优更简便的方案可补充