Я играл с эс последней пару дней, и он (как гс) имеет галтель / особенность , что он работает только его сценарий запуска ( .esrc
) на входе в системе. Обычный способ запуска кода в каждом интерактивном сеансе - поместить этот код в %prompt
функцию.
Конечно, нет %prompt
функции, если es -l
она никогда не запускалась.
Итак, вопрос: как настроить среду входа в систему, когда вы входите через gdm или аналогичный, который использует только источник .profile (или .xprofile, .xsession и т. Д.)? Лучшее, что я придумал, это:
if [ -f "$HOME/.esrc" ]; then
eval "`es -l <<-x
sh <<<'export -p'
x`"
fi
Что кажется ... ужасающим. Есть ли подходы лучше?
shell
environment-variables
profile
gdm
james.haggerty
источник
источник
es
это не ваша оболочка для входа. Как насчет настройкиalias es='es -l'
в.bashrc
?es
моя оболочка для входа Извините, если я не прояснил это. Но оболочки входа в систему не запускаются в сеансах X до запуска терминалов, по крайней мере, насколько я знаю.bash
, нетes
. Но когда я открываю новое окно терминала, оно запускаетсяbash
как оболочка входа.Ответы:
Так как никто не имеет реального ответа, вот мой ужасный хак. Некоторые оболочки (например, * rxvt) имеют настройки, которые позволяют принудительно использовать оболочку входа. Таким образом,
.Xdefaults
вы можете добавить что-то похожее наЭто означает, что
urxvt256c-ml
по умолчанию все запущенные вами терминалы будут иметь оболочку входа.Это помогает вообще?
источник