Como definir corretamente variáveis de ambiente no Debian Jessie?

0

Eu não consigo descobrir como definir as variáveis de ambiente corretamente, embora eu tenha tentado seguir o link .

Adicionei isso a ~/.bashrc :

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

Pareceu-me lógico comentar estas linhas em ~/.profile depois de fazer isso:

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

Agora, quando eu abro um terminal, as variáveis em ~/.profile e ~/.bash_profile são exportadas corretamente.

Como faço as variáveis em ~/.profile disponíveis para aplicativos que eu inicio através do menu XFCE? Eu sei que não é o caso, porque se eu lançar gpodder de um terminal, ele faz o que eu quero, ou seja. ele detecta $GPODDER_HOME que está definido no meu .profile , mas isso não acontece quando eu o inicio "graficamente".

    
por nicoco 17.04.2016 / 16:40

2 respostas

1

Veja man xsession :

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

Source global environment variables. This script will source anything in $HOME/.xsessionrc if the file is present. This allows the user to set global environment variables for their X session, such as locale information.

    
por 19.04.2016 / 11:34
0

Eu finalmente adicionei um arquivo profile.desktop em ~/.config/autostart que se parece com isto:

~/.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

Esta é a única solução encontrada que não envolve a modificação de arquivos como root.

    
por 17.04.2016 / 17:43