我创建了一个.desktop
文件来启动我们的应用程序。我们的应用程序要求正确配置某个环境变量。我可以在哪里根据每个用户配置此环境变量(我知道、喜欢~/.bashrc
但~/.profile
不起作用的常见候选者)。
也许有一个解决方法,所以我可以在启动应用程序之前在文件Exec=
行中进行配置?.desktop
答案1
在桌面文件本身中,您可以通过以下方式执行该程序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
只读当你登录时,因此更改后必须退出。