O principal problema aqui é que .bash_profile
não é lido quando você faz um login gráfico. É um arquivo específico do bash, é lido quando você inicia um shell de login e duvido muito que ele seja lido em um login gráfico.
Você teria uma chance melhor de usar ~/.profile
, que é i) lido pela maioria dos shells de login, não apenas bash, então você não está limitando seu usuário a um shell específico e ii) muito mais propenso a ser lido por um login gráfico.
Acabei de verificar isso e .profile
é realmente lido no Ubuntu 13.04 quando você faz login graficamente. No entanto, você não pode presumir que sempre será o caso. Para mais detalhes, veja a excelente resposta de Gilles aqui .
Agora, alguns pontos menores. Não há necessidade de touch
, echo "foo" >> bar
criará o arquivo bar
se ele não existir e será anexado a ele, se existir. Além disso, não há necessidade de .bash_profile
ser executável, o arquivo é originado, não executado. Eu não sei se isso causaria problemas, mas poderia acontecer.
Finalmente, o grupo do arquivo será raiz, não o usuário. Novamente, não tenho certeza se isso é um problema, mas você pode adicionar isso ao seu script:
chown $user:$user .profile
Observe que .profile
é ignorado pelo bash se um arquivo chamado ~/.bash_profile
existir. Isso não deve afetar os logons gráficos, mas pode causar um comportamento inesperado ao efetuar login a partir da linha de comando.