如何在 Debian Jessie 中正确设置环境变量?

如何在 Debian Jessie 中正确设置环境变量?

尽管我尝试遵循,但我不知道如何正确设置环境变量https://wiki.debian.org/EnvironmentVariables

我已将此添加到~/.bashrc

if [ -f ~/.bash_profile ]; then
    . ~/.bash_profile
fi

~/.profile对我来说,在这样做之后评论这些行似乎是合乎逻辑的:

# if running bash
# if [ -n "$BASH_VERSION" ]; then
#    # include .bashrc if it exists
#    if [ -f "$HOME/.bashrc" ]; then
#   . "$HOME/.bashrc"
#    fi
#fi

现在,当我打开终端时,~/.profile和中的变量~/.bash_profile被正确导出。

如何使变量~/.profile可用于通过 XFCE 菜单启动的应用程序?我知道情况并非如此,因为如果我gpodder从终端启动,它就会执行我想要的操作,即。它检测到$GPODDER_HOMEmy 中设置的内容.profile,但是当我“以图形方式”启动它时,这种情况不会发生。

答案1

man xsession

/etc/X11/Xsession.d/40x11-common_xsessionrc

源全局环境变量。$HOME/.xsessionrc 如果文件存在,此脚本将获取任何内容。这允许用户为其 X 会话设置全局环境变量,例如区域设置信息。

答案2

我最后添加了一个如下所示的profile.desktop文件:~/.config/autostart

~/.config/autostart$ cat profile.desktop 
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=profile
Comment=
Exec=/bin/bash /home/nicoco/.profile
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false

这是我发现的唯一不涉及以 root 身份修改文件的解决方法。

相关内容