8

Я создал файл .desktop для запуска нашего приложения. Наше приложение требует, чтобы определенная переменная среды была настроена правильно. Где я могу настроить эту переменную среды для каждого пользователя (обычные кандидаты, которых я знаю, такие как ~/.bashrc и ~/.profile , не работают).

Может быть, есть обходной путь, поэтому я могу настроить его в строке Exec= файла .desktop перед запуском приложения?

1 ответ1

15

В самом файле рабочего стола вы можете запустить программу через env:

Exec=/usr/bin/env VAR=value /usr/bin/yourprogram

Или используйте скрипт-обертку (например, /usr/bin/yourprogram.env):

#!/bin/sh
VAR=value
export VAR
exec /usr/bin/yourprogram.real "$@"

Тем не менее, оба являются плохими решениями, так как Unity не сможет правильно отслеживать программу, если она запускается через оболочку.

Было бы намного лучше заставить ~/.profile работать - убедитесь, что вы используете правильный синтаксис и все такое:

export VAR=value

или же

VAR=value
export VAR

Также помните, что ~/.profile читается только при входе в систему, поэтому вы должны выйти из системы после его изменения.

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