Como posso definir variáveis de ambiente para um login gráfico no linux?

15

Eu estou procurando uma maneira de definir variáveis de ambiente arbitrárias para o meu login gráfico no linux. Não estou falando de iniciar um terminal e exportar variáveis de ambiente dentro do terminal, porque essas variáveis só existem dentro desse terminal. Eu quero saber como definir uma variável de ambiente que será aplicada a todos os programas iniciados na minha sessão gráfica.

Em outras palavras, qual é o equivalente do Xorg em ~/.bash_login ?

    
por Ryan Thompson 18.03.2010 / 07:11

3 respostas

8

Você sempre pode colocá-los em .profile , então eles devem se inscrever para qualquer login.

Ocorrem problemas no entanto, se existir um .bash_login : Nesse caso, o bash não lerá .profile .

Se você quiser que suas variáveis de .profile sejam aplicadas no bash e em outros logins, não use .bash_login ! Coloque bash as variáveis específicas em .bashrc .

Ou, como alternativa, inclua .profile de .bash_login

    
por 18.03.2010 / 13:59
3

Meu .profile faz mais do que apenas definir variáveis de ambiente, então divido as tarefas de configuração do ambiente em um arquivo .setenv , o qual somente define o ambiente. Para configurar o ambiente para o X11 no Debian, adicionei um .xsessionrc em minha casa com:

. ~/.setenv

O arquivo que faz com que .xsessionrc seja originado é /etc/X11/Xsession.d/40x11-common_xsessionrc .

Usar os arquivos que o bash usa para definir seu ambiente não faz o que eu quero. Claro, se eu começasse um shell bash no X11, conseguiria o ambiente que queria. No entanto, preciso ter meu PATH configurado para que meu ambiente de desktop execute o software desejado. Por exemplo, eu geralmente uso versões personalizadas do Firefox, instaladas fora dos caminhos habituais. Eu quero o meu ambiente de trabalho para iniciar a versão correta em vez de usar o que ele pode encontrar nos caminhos padrão. Para fazer isso, o PATH deve ser definido antes do início do ambiente da área de trabalho.

    
por 15.12.2013 / 14:09
0

O próprio Xorg não tem um, pois ele não inicia seus programas - seria qualquer gerenciador de exibição (gdm, xdm, xinit, startx, etc.) ou gerenciador de sessão (gnome-session, KDE, etc. ) que você usa, uma vez que esses são os pais dos processos de sessão da área de trabalho. Infelizmente, há vários deles, cada um com diferentes scripts / dotfiles de inicialização, portanto, não há uma resposta única para todos. (Sob o modelo cliente / servidor do X, o servidor X pode nem estar na mesma máquina que os clientes, e é frequentemente executado como root ao invés de você, então é o lugar errado para configurações como variáveis de ambiente.)

    
por 18.03.2010 / 20:02