如果我理解正确的话,LightDM 已经默认替换了 GDM。我想知道是否有可能让它运行我放在我的 .xinitrc 文件中的东西......我需要的是“Unity”和“Unity 2D”下面的一个选项,上面写着“运行用户定义的会话”。
那可能吗?应该是最简单的事情,但到目前为止我没有得到任何线索。我在这个文件中导出、定义和运行了很多东西,所以对我来说控制它是非常重要的。
我不想要的是 /usr/some/where 中的自定义会话,我只希望它运行来自每个用户的 xinitrc(或类似的)的东西。
Joã*_*nto 20
使用以下命令创建一个新文件/usr/share/xsessions/custom.desktop:
[Desktop Entry]
Name=Xsession
Exec=/etc/X11/Xsession
Run Code Online (Sandbox Code Playgroud)
您现在应该在登录期间有一个新的会话选项,Xsession 将加载用户的~/.xinitrc.
创建一个新文件/usr/share/xsessions/default.desktop(名称由您决定,但必须有.desktop后缀):
[Desktop Entry]
Name=Default
Comment=This runs user session and logs you into Ubuntu
Exec=default
Icon=
Run Code Online (Sandbox Code Playgroud)
现在,当您选择此会话lightdm并登录时,您的~/.xsession文件(如果存在)将被执行。
请注意,执行的用户文件是~/.xsession,而不是~/.xinitrc问题中提到的 。(在从命令行~/.xinitrc使用startx脚本启动 X 会话时使用。)
一些解释: 该Name条目是lightdm该会话将显示的内容。该Exec条目是最重要的事情,这应该是启动实际的会议程序的名称。当您登录时,lightdm调用/etc/X11/Xsession脚本,将 的值Exec作为参数传递给它,并Xsession最终执行此程序(例如,它可能startxfce4用于启动xfce4会话)。如果Exec条目是特殊字符串default,Xsession则将执行用户的~/.xsession文件。(如果在没有参数的情况下调用它Xsession也会执行~/.xsession。)
抱歉,我是新来的,因此无法评论其他人的答案,但我想评论已接受的答案,以使事情更清楚。根据我上面的解释,该答案的方法会发生什么,Xsession它将被lightdm一个参数(的完整路径)调用Xsession。SoXession将运行然后调用自身,这次没有参数。第二个Xsession不带参数调用,将执行用户的~/.xsession. 因此,最终会采取所需的行动,但方式有点尴尬。
| 归档时间: |
|
| 查看次数: |
29935 次 |
| 最近记录: |