使用 Openbox 的用户定义 upstart 作业

使用 Openbox 的用户定义 upstart 作业

我知道要为 upstart 启用用户定义的作业,您需要取消注释ubuntu/etc/upstart-xsessions这将允许用户在 ubuntu 默认 Xsession 中定义 upstart 作业。

问题是如何使用不同的会话(例如 openbox)启用用户定义的 upstart 作业,我认为这应该像openbox在 中添加行一样简单/etc/upstart-xsessions。但是添加此行后,openbox 在启动期间挂起,最终我根本没有窗口管理器。

答案1

我在使用 xmonad 时遇到了同样的问题,并找到了以下解决方案。

当您添加openbox到时/etc/upstart-xsessions,脚本会用 替换环境变量/etc/X11/Xsession.d/99upstart的值,因此 openbox 不会由 X 启动。STARTUPinit --user

为了能够运行选定的 xsession,upstart 会发出事件xsession,其环境变量SESSION等于您的 xsession。对于 xmonad,我编写了以下脚本并将其放入~/.config/upstart/xmonad.conf

start on xsession SESSION=xmonad
stop on session-end

exec xmonad

我认为你应该用 替换 all xmonadopenbox如果你想要系统范围的解决方案,你必须把这个脚本放到/etc/init/

相关内容