LINUX.ORG.RU

Проблема с добавлением своего пути ~/bin в переменную окружения PATH

 


0

1

Проблема с добавлением своего пути ~/bin в переменную окружения PATH.
Crunchbang 11
Slim из-за тормозов заменен на LightDM. При Slim проблемы не было.

echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
Добавляю в PATH ~/bin:
export PATH=/home/myname/bin:$PATH
После этого пользовательские скрипты, лежащие в ~/bin запускаются только из терминала как команды, а в программах dmenu_run и gmrun нет.
После перезагрузки изменение не сохраняется.
Пытался (по отдельности) записывать строки:
export PATH=/home/myname/bin:$PATH
и
PATH=/home/myname/bin:$PATH
в файлы (по очереди):
/etc/profile.local
/etc/profile
/etc/environment
~/.bashrc
~/.bash_profile
~/.profile
~/.xinitrc
в файл /etc/login.defs:
ENV_PATH	PATH=/home/myname/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
не помогло.
Что тут можно еще сделать?

Нельзя первым писать. Только в конце.

И писать это надо в ~/.bashrc. Больше никуда не надо.

а в программах dmenu_run и gmrun нет.

Естественно: им же терминал нужен!!!

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от Eddy_Em

Нельзя первым писать. Только в конце.

Почему нельзя? Только не говори, что это security hole.

И писать это надо в ~/.bashrc. Больше никуда не надо.

bashrc читает только bash и только программы которые запускают bash.

ТС, для всех графических утилит что-либо прописывать надо в .xinitrc:

PATH="$HOME/bin:${PATH}" openbox

gh0stwizard ★★★★★ ()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Ответ на: комментарий от gh0stwizard

К сожалению, не помогло. Кстати, с .xinitrc у меня и раньше были проблемы с автозапуском других процессов.

ls -l .xinitrc
-rwxr-xr-x
cat .xinitrc
PATH="$HOME/bin:${PATH}" lightDM
carabo ()
Ответ на: комментарий от carabo

Я там ошибься, lightDM это аналог slim/gdm/kdm и т.п. Так вот, после логина (в случае иксов) происходит всегда чтение xinitrc, все что там выставлено, запускается отрабатывает. После запускается DE/WM типа kde, gnome, openbox. Я уже исправил предыдущий пост.

Ну, если не хочешь управление запуском DE/WM вручную через .xinitrc, тогда надо записать так:

# ~/.xinitrc

export PATH="$HOME/bin:${PATH}"

gh0stwizard ★★★★★ ()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Ответ на: комментарий от gh0stwizard

Только не говори, что это security hole

Она и есть. Но это еще цветочки. Вот если добавить . в PATH…

ТС, для всех графических утилит что-либо прописывать надо в .xinitrc

Чушь: как он запустит скрипт без консоли? Никак. Как минимум для иксов нужно что-то вроде terminal -H -x ls

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от gh0stwizard

Получается, что у меня действительно не исполняется файл .xinitrc, ни вручную, ни автоматически при загрузке, хотя права ему вроде выставлены на исполнение:

ls -l ./.xinitrc
-rwxrwxrwx
Код, сохраненный в файле настроек openbox autostart.sh тоже не работает при загрузке:
export PATH="$HOME/bin:${PATH}"

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

Копай документацию/конфиги на lightDM. Видимо они сделали все в обход.

$HOME/.xinitrc читается из недр /etc/X11, там есть несколько скриптов, которые все это дело обслуживают.

gh0stwizard ★★★★★ ()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.