Установка переменной PATH в XFCE4
У меня установлено несколько программ ~/.local/bin/
папка и в /etc/profile
У меня есть следующее:
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
PATH="~/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:~/.cabal/bin"
fi
export PATH
XFCE4 не уважает эту переменную, вместо этого имея /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
как PATH, поэтому, если я открываю xfce4-терминал, я не могу запустить программы, расположенные в ~/.local/bin/
, Это также относится к emacs, если он запущен с XFCE4, поэтому M-x run-shen
например, не работает, так как shen не установлен для всей системы.
Эта проблема не возникает при использовании startx
Таким образом, проблема, вероятно, заключается в том, как XFCE4 запускается.
я сделал grep -R PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games /etc/
, но это ничего не дало, кроме /etc/login.def
,
3 ответа
Правильный файл для использования ~/.xsessionrc
,
Просто создайте этот файл и введите:
PATH=~/.local/bin:$PATH:~/.cabal/bin
export PATH
Правильный путь таков:
cp /etc/xdg/xfce4/xinitrc ~/.config/xfce4/xinitrc
затем отредактируйте ~/.config/xfce4/xinitrc
класть
export PATH=~/.local/bin:$PATH:~/.cabal/bin
Если он работает под vnc-сервером, проверьтеPATH
переменная не установлена в.vnc/xstartup
, в противном случае он переопределит тот, который установлен в.profile
или/etc/environment
.