~/.bashrc é normalmente lido para shells interativos secundários após o login. Se você quiser inicializar seus parâmetros no login, use ~/.profile . Para aplicar os parâmetros em todo o sistema, use /etc/profile . É o primeiro arquivo lido pelo bash.
Para tornar as coisas mais claras, acho que vou explicar um pouco mais.
- Quando você faz login, seu shell de login lê primeiro o% global
/etc/profile, em seguida,~/.profilee os parâmetros / variáveis mencionados nele são inicializados. No entanto, você não vê este shell como terminal porque a GUI do sistema X-window está em execução. - Após o login, quando você abre um terminal secundário / emulador de terminal, por ex.
gnome-terminal~/.bashrcé lido e os parâmetros / variáveis declarados estão disponíveis apenas para o terminal secundário. Note que este terminal secundário é um processo filho do seu shell de login. - Quando você inicia um aplicativo a partir do menu, ele é executado como um processo filho de seu shell de login e herda os parâmetros de seu processo ancestral. Mas
.bashrcnão estava disponível para o shell de login principal; por isso não está disponível para aplicativos também. Portanto, nada em.bashrcnão estará disponível para esses aplicativos se for executado no menu. Mas quando você abre um comandognome-terminale executa a partir daí, os aplicativos são iniciados como filhos degnome-terminale herdam os parâmetros de.bashrca partir dele.