Как я могу использовать LightDM для пользовательских сессий?

Если я правильно понимаю, LightDM заменил GDM по умолчанию. Интересно, можно ли заставить его запускать то, что я положил в свой файл.xinitrc... мне нужна опция под "Unity" и "Unity 2D", которая гласит "Запустить пользовательский сеанс".

Это возможно? Должно быть, самое простое, но я пока не понял. В этом файле я экспортирую, определяю и запускаю множество вещей, поэтому для меня очень важно иметь контроль над этим.

Чего я НЕ хочу, так это пользовательского сеанса в / usr / some / where, я только хочу, чтобы он запускал материал из xinitrc каждого пользователя (или аналогичного).

3 ответа

Решение

Создать новый файл /usr/share/xsessions/custom.desktop с:

[Desktop Entry]
Name=Xsession
Exec=/etc/X11/Xsession

Теперь у вас должна быть новая опция сеанса во время входа в систему, Xsession загрузит пользователя ~/.xinitrc,

Создать новый файл /user/share/xsessions/default.desktop (Название зависит от вас, но оно должно иметь .desktop суффикс):

[Desktop Entry]
Name=Default
Comment=This runs user session and logs you into Ubuntu
Exec=default
Icon=

Теперь, когда вы выбираете эту сессию в lightdm и войдите, ваш ~/.xsession файл, если существует, будет выполнен.

Обратите внимание, что файл пользователя, который выполняется ~/.xsession, и не ~/.xinitrc, который был упомянут в вопросе. (~/.xinitrc используется при запуске сеанса X с использованием startx скрипт из командной строки.)

Некоторые объяснения: Name вход это что lightdm будет отображаться для этой сессии. Exec Запись - это важная вещь, и это должно быть имя программы, которая запускает реальную сессию. Когда вы входите, lightdm вызывает /etc/X11/Xsession сценарий, передавая ему значение Exec в качестве аргумента и Xsession будет, в конце концов, выполнять эту программу (например, это может быть startxfce4 для начала xfce4 сессия). Если Exec запись является специальной строкой default, затем Xsession выполнит пользователя ~/.xsession файл. (Xsession также выполнит ~/.xsession если это называется без арументов.)

Извините, я новичок здесь и поэтому не могу комментировать ответы других людей, но я бы хотел прокомментировать принятый ответ, чтобы прояснить ситуацию. В соответствии с моим объяснением выше, что произойдет с методом этого ответа является то, что Xsession будет вызван lightdm с аргументом, который является (полный путь) Xsession, Так Xession будет работать, а затем вызвать себя, на этот раз без аргументов. Второй Xsession, будучи вызванным без аргументов, выполнит пользователя ~/.xsession, Таким образом, желаемое действие будет, в конце концов, предпринято, но немного неловко.

Чтобы использовать olvwm:

1) Тип sudo apt-get install olvwm в консоли

2) Создайте эту сессию:

/usr/share/xsessions/olvwm.desktop
[Desktop Entry]
Name=Open Look
Exec=olvwm
Type=Application
Другие вопросы по тегам