我今天开始使用 uxterm 而不是 Gnome 的终端。我将 uxterm 的设置放在 中~/.Xdefaults
。但由于 Ubuntu 的配置忽略了我的.xsession
文件,因此我无法在登录时加载这些设置。我怎样才能让 Unity(或 lightdm)运行.xsession
?我的.xsession
被 XMonad 识别并运行。
答案1
~/.xsession
仅在未选择 X 会话时使用。用于~/.xsessionrc
在启动时运行程序。
由于使用~/.Xdefaults
已过时,Ubuntu 与任何其他现代 X 环境一样,~/.Xresources
在启动时使用(例如,参见这里由于某些原因)。因此,如果您输入了设置,~/.Xresources
则无需运行,xrdb
因为 Ubuntu 会为您完成此操作。
如果您想了解更多有关启动 X 会话时 Ubuntu 正在做什么的信息,/etc/X11/Xsession
请查看。/etc/X11/Xsession.d/*
答案2
注意:在 Ubuntu 12.03 中 .xsessionrc 也被忽略
解决它:
打开
./Xsession.d/40x11-common_xsessionrc
在开头添加
USERXSESSIONRC=$HOME/.xsessionrc
这是最终内容:
# This file is sourced by Xsession(5), not executed.
#Source user defined xsessionrc (locales and other environment variables)
USERXSESSIONRC=$HOME/.xsessionrc
if [ -r "$USERXSESSIONRC" ]; then
. "$USERXSESSIONRC"
fi
我不知道 12.04 以上版本是否解决了这个问题