Não é possível definir variáveis de ambiente em ~ / .profile

2

Tudo, eu preciso definir variáveis de ambiente no meu ~/.profile desde que eu estou executando um programa (QtCreator) que não inicia um shell bash.

Eu não posso para a vida de mim começar a trabalhar embora. O QtCreator não mostrará nenhuma das variáveis de ambiente que eu defini em "Ambiente do Sistema".

Como posso fazer isso?

Editar: Ok, na verdade, minha pergunta é por que não posso source my_environment

my_environment:

 export SOME_PATH=blalalal

Se eu adicionar export SOME_PATH=blalalal ao meu ~/.profile , isso funciona. Mas não posso usar source ~/.profile

    
por Constantin 17.10.2012 / 21:06

2 respostas

4

Aqui está a história:

  

~ / .profile - Nesse arquivo, você também pode atribuir atribuições de variáveis de ambiente, pois elas são executadas automaticamente pelo DisplayManager durante a sessão da área de trabalho do processo de inicialização, bem como pelo shell de login quando um login é feito no arquivo textual. console.

( source )

  1. solution: exporte as variáveis definidas em .profile .

    export VAR1 = foo

  2. solution: coloca as variáveis em .bashrc, abre um terminal e inicia o QtCreator a partir da linha de comando. Deve ter as variáveis. Não esqueça de exportá-los:

    export VAR1=foo
    
  3. solution: crie um wrapper para iniciar seu programa, um pequeno script que você executa em vez de executar o programa diretamente:

    #!/bin/bash
    
    export VAR1=foo
    program
    

    ou

     #!/bin/bash
    
     VAR1=foo program
    
  4. solução: edite o arquivo .desktop usado para iniciar o aplicativo, modificando a linha de execução para

     VAR1=foo program
    

    em vez de

     program
    

    (não testei isso, mas deve funcionar)

  5. solução: altere o ambiente. Você está certo em seu comentário de que os programas obtêm um ambiente, mesmo que não o leiam a partir do .profile . O ambiente de todo o sistema está em /etc/environment , mas você também pode defini-lo por sessão, em um arquivo no seu diretório pessoal chamado .pam_environment . Consulte aqui para obter mais informações. By the way, esta página explica perfeitamente o que todos os arquivos diferentes fazem e quando usar qual.

    No entanto, eu prefiro as soluções 1-3, porque elas mudam apenas o ambiente do programa , e não de toda a sessão.

por January 17.10.2012 / 21:16
0

Basta fazer logout e fazer login novamente no sistema em que o arquivo .pam-environment é lido e a variável de ambiente é reconhecida.

    
por Fernando Santucci 30.10.2014 / 21:12