当我运行 startx 时,什么在启动 i3?

当我运行 startx 时,什么在启动 i3?

我正在尝试查找 startx 用于启动 i3 窗口管理器的配置文件。

奇怪的是,在和grep -r i3中没有返回相关结果。~/etc/X11/

我已经检查了我能想到的所有文件。我的目录中~没有任何文件。子目录中.x*没有文件对 i3 有任何引用。我检查过,等等。.x*/etc/X11.xinitrc.Xsession

但是..当我登录时,我可以运行startx并且 i3 神奇地启动。我完全困惑了。

在 odroid 上运行 Ubuntu,但这应该没有什么区别。

如果有什么不同的话,我在创建用户之前以 root 身份安装了 i3。

cat /etc/issue
Ubuntu 16.04.1 LTS \n \l

uname -a
Linux odroid 3.10.96-113 #1 SMP PREEMPT Wed Jul 6 22:19:28 UTC 2016 armv7l armv7l armv7l GNU/Linux

如下所示,没有地方可以隐藏:

root@odroid:/home/matt# find / -name *xinit*
/var/lib/dpkg/info/xinit.conffiles
/var/lib/dpkg/info/xinit.list
/var/lib/dpkg/info/xinit.md5sums
/var/lib/dpkg/info/xinit.postinst
/etc/X11/xinit
/etc/X11/xinit/xinitrc.d
/etc/X11/xinit/xinitrc
/usr/share/doc/xinit
/usr/share/man/man1/xinit.1.gz
/usr/bin/xinit
root@odroid:/home/matt# 

root@odroid:/home# grep -r 'exec i3'
matt/.config/i3/config_bak:bindsym $mod+Return exec i3-sensible-terminal
matt/.config/i3/config:bindsym $mod+Return exec i3-sensible-terminal
root@odroid:/home# cd /etc/
root@odroid:/etc# grep -r 'exec i3'
i3/config:bindsym Mod1+Return exec i3-sensible-terminal
i3/config:exec i3-config-wizard
i3/config.keycodes:bindcode $mod+36 exec i3-sensible-terminal
root@odroid:/etc# 

当我运行 startx 时,什么在启动 i3?

答案1

i3似乎是一个 X 窗口管理器。如果它是您系统的默认窗口管理器,它会在“替代”系统中注册 - 您可以使用 进行检查update-alternatives --display x-window-manager。这意味着这/usr/bin/x-window-manager是一个符号链接/etc/alternatives/x-window-manager;这又由“替代”系统设置为指向i3

如果你想改变系统默认的窗口管理器,root可以update-alternatives --config x-window-manager

如果 Xsession 找到窗口管理器,它将使其成为会话中启动的默认程序。在 Debian 中,这是在/etc/X11/Xsession.d/50x11-common_determine-startup.

如果用户想要在他们的 X 会话中运行不同的程序,那么他们可以编写一个~/.xsession启动(或执行)所需程序的程序。

相关内容