LD_LIBRARY не экспортируется для i3wm / dmenu

Короче; Я хочу запустить python3 из dmenu / i3-msg, и моя установка на python требует, чтобы я добавил путь к lib в мой LD_LIBRARY_PATH.

Моя установка - Ubuntu 16.04, с Lightdm по умолчанию, с i3 в комплекте с моим менеджером пакетов (i3 version 4.11 (2015-09-30, branch "4.11")

Чтобы инициализировать это, вот содержимое моих файлов.profile / .xprofile / .xsession / .xsessionrc (да, я скопировал это 4 раза):

export PATH="$HOME/bin:$HOME/bin/git-aliases:$HOME/.local/bin:$PATH"
export PATH="$HOME/.cargo/bin:$PATH"
export PATH="/usr/local/cuda-10.1/bin:$PATH"

# cuda
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
# python3.7 (built from source)
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
# harfbuzz, used by kitty
export LD_LIBRARY_PATH="$HOME/Clones/harfbuzz/src/.libs:$LD_LIBRARY_PATH"

Для тестирования вот тестовый скрипт, который я пытаюсь запустить из dmenu:

echo "LD" $LD_LIBRARY_PATH >> $HOME/thatexplainsit
echo "PATH" $PATH >> $HOME/thatexplainsit

При запуске скрипта вручную содержимое файла соответствует ожидаемому:

$ cat thatexplainsit    
LD blabla
PATH blabla

Однако, если в моем конфиге i3 я запускаю exec that-script Я получил:

LD       # <-- this is empty !?
PATH blabla

Аналогично, работает dmenu_run из командной строки работает, пока работает dmenu_run от ярлыка i3 нет.

Я пытался запустить grep -r "export LD_LIBRARY_PATH" чтобы найти, если это было изменено где-то еще, безрезультатно. Что происходит? Почему я не могу установить эту переменную в моем.profile, как я делаю с моим путем?

0 ответов

Другие вопросы по тегам