解决使用 lightdm 登入 Arch 后未打开 dwm 问题

ArckWiki DM 部分

Display Manager

Display Manager 通常是一个在启动过程结束时,代替默认 shell 显示图形用户界面.

Greeter

greeter 是提示用户输入密码的 GUI 界面,如果配置了自动登录,可以不使用 greeter. 默认配置使用的是 lightdm-gtk-greeter.

可以通过更改配置文件中的 [Seat:*] 部分来设置 greeter.

可以通过 ls -l /usr/share/xgreeters/ 来获取 greeter 的可用选项.

会话配置

会话,即在 greeter 输入密码账号后即将进入的程序,一般为 Window Manager 或桌面.

多数显示管理器会读取 /usr/share/xsessions 目录获取可用的会话列表,此目录中包含各个标准的桌面文件。

要建立会话,可以在 /usr/share/xsessions 中新建 .desktop 后缀的文件.

格式 (以我自己 Ubuntu 上的 gnome.desktop) 为例:

1
2
3
4
5
6
7
8
9
[Desktop Entry]
Name=GNOME
Comment=This session logs you into GNOME
Exec=/usr/bin/gnome-session --session=gnome
TryExec=/usr/bin/gnome-session
Type=Application
DesktopNames=GNOME
X-GDM-SessionRegisters=true
X-Ubuntu-Gettext-Domain=gnome-session-42

里面的 gnome-session 是一个 shell 脚本.

运行 ~/.xinitrc 会话

需要安装 xinit-xsession 后,在显示管理器中提供一个运行 xinitrc 会话的选项,需确保 ~/.xinitrc 可执行,然后再显示管理器中选择 xinitrc 作为会话.

没有窗口管理器启动应用程序

可以在没有窗口修饰,桌面或窗口管理器的情况下启动应用程序。

如,要启动 google-chrome,在 /usr/share/xsessions/ 中创建 web-browser.desktop:

1
2
3
4
5
6
7
[Desktop Entry]
Name=Web Browser
Comment=Use a web browser as your session
Exec=/usr/bin/google-chrone --auto-launch-at-startup
TryExec=/usr/bin/google-chrone --auto-launch-at-startup
Icon=google-chrome
Type=Application

解决使用 lightdm 登入 Arch 后未打开 dwm 问题
http://example.com/2022/09/04/解决使用-lightdm-登入-Arch-后未打开-dwm-问题/
作者
Jie
发布于
2022年9月4日
许可协议