2

У меня есть несколько программ, установленных в моей папке ~/.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 .

2 ответа2

3

Правильный файл для использования - ~/.xsessionrc .

Просто создайте этот файл и введите:

PATH=~/.local/bin:$PATH:~/.cabal/bin
export PATH
0

Правильный путь таков:

cp /etc/xdg/xfce4/xinitrc  ~/.config/xfce4/xinitrc

затем отредактируйте ~/.config/xfce4/xinitrc чтобы поставить

export PATH=~/.local/bin:$PATH:~/.cabal/bin

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .