Никак немогу заставить скрипт добавлять переменную окружения в Ubuntu.
#!/bin/bash
if [ "$(lsmod | grep nouveau)" > /dev/null ]
then
export QT_XCB_FORCE_SOFTWARE_OPENGL=1
echo "test"
fi
Если вручную писать в терминале
export QT_XCB_FORCE_SOFTWARE_OPENGL=1
все работает как нужно, и от юзера и от рута. Но скрипт не добавляет переменную даже при ручном запуске, вывод
env
не содержит нужную переменную. Пробовал делать:
export QT_XCB_FORCE_SOFTWARE_OPENGL="1"
Но ничего не меняется. Права на скрипт 777.
Жестко добавить в /etc/environment не могу в силу определенных причин, так как сборка конфигурируется под разное железо и если использовать переменную export QT_XCB_FORCE_SOFTWARE_OPENGL там где не используются драйверы nouveau то софт приложение будет падать.
Ответ
Дело в том, что bash создает а при выходе из скрипта уничтожает копию environment запустите . вашскрит.sh и все получится. PS: здесь похожий вопрос
Комментариев нет:
Отправить комментарий