LINUX.ORG.RU

зависит от интерпретатора, у меня например вот так:

$cat /etc/zsh/zshenv

if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME="/usr/local/tools/jdk"
fi
export JAVA_HOME

PartyZan ★★★
()
Ответ на: комментарий от marsijanin

Эта переменная будет только в этом терминале. Не годится.

anonymous
()

Прописал в /etc/gdm/gdm.conf. А как сделать для отдельного пользователя - по-прежнему хз.

anonymous
()

Самый универсальный способ -- написать свой ~/.xsession, засурсить ~/.profile (~/.bash_profile или чего там у кого) и в конце: exec x-session-manager или чего-там у кого любимое.

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от watashiwa_daredeska

> Не советуй человеку гадостей.

И чего в этом гадкого ежели он хочет измененный PATH для юзера получить?

PartyZan ★★★
()
Ответ на: комментарий от PartyZan

> И чего в этом гадкого

~/.bashrc исполняется при _каждом_ запуске bash, в частности, при исполнении скриптов. Таким образом, если написать, скажем,

PATH=$PATH:$HOME/bin

то запустив в терминале еще раз bash, получим $HOME/bin в PATH указанный дважды. Ну и прочее в том же духе. Короче, _среду_ надо настраивать в ~/.profile, а не в ~/.bashrc.

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от anonymous

> А из .profile оно не цепляется.

См. мой пост выше -- надо писать ~/.xsession, например, такой:

===== CUT HERE =====
#!/bin/sh
. ~/.profile

if [ -x /usr/bin/x-session-manager ]; then
  exec /usr/bin/x-session-manager
elif [ -x /usr/bin/x-window-manager ]; then
  exec /usr/bin/x-window-manager
elif [ -x /usr/bin/x-terminal-emulator ]; then
  exec /usr/bin/x-terminal-emulator
fi
===== CUT HERE =====

Не забудь chmod +x ~/.xsession

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от anonymous

для баша емнип умолчально используется ~/.bash_profile

PartyZan ★★★
()
Ответ на: комментарий от anonymous

> если уже присутсвует в $PATH, то не добавляем.

много геморроя, да еще на каждый запуск... Лучше не надо.

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от anonymous

Ну можно $PATH через такой фильтр пропускать:
|perl -ne 'chop;for(split(/:/)){$u.=($u?":":"").$_ if $u!~/(^|:)$_($|:)/;}print $u'

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.