.xsession и .xinitrc не выполняются при входе в систему

.xsession и .xinitrc не выполняются при входе в систему

Вот содержание моего ~/.xsession:

#!/bin/bash

# Tray for skype, keyboard layout, ...
trayer --edge top --align right --SetDockType true --SetPartialStrut true  --expand true --width 10 --transparent true --tint 0x686868 --height 17 &

# Keyboard layout switcher
setxkbmap -layout us,se -option 'grp:alt_shift_toggle' &

xscreensaver -nosplash &

После входа в систему с выбранным xmonad в lightdm, xscreensaver не запускается, trayer тоже, а setxkbmap не настроен.

Я виделэтот вопрос, что в точности то же самое, но ответы там не помогли:

  • ~/.xsessionисполняем для всех
  • У меня нет опции «Пользовательский сеанс» в менеджере входа (по умолчанию в Ubuntu)

решение1

Оказывается, я создал свой собственный скрипт запуска xmonad-start.shи изменил /usr/share/xsessions/xmonad.desktopстроку Exec, чтобы запустить этот скрипт. Я все еще не понимаю, почему X не запускал ~/.xsessionWM, но добавление ~/.xsessionв мой скрипт xmonad-start.shсработало.

Этот вопроспомогло.


В моей новой установке (Ubuntu 15.10 и xmonadвыше apt-get) это работает следующим образом:

  • /usr/share/xsessions/xmonad.desktopэто то, что вызывается при входе в систему с помощьюlightdm
  • это в свою очередь имеет рядExec=xmonad-session
  • xmonad-sessionнаходится в /usr/bin, и источники, .xmonad/xmonad-session-rcесли они существуют.

Таким образом, вы можете просто создать символическую ссылку ~/.xmonad/xmonad-session-rcтуда, где находится ваш стартовый скрипт.

Не допускается вмешательство в файлы, не принадлежащие пользователю.

Связанный контент