O diretório $HOME/.config
faz parte da Especificação do XDG e é determinado pelo valor de $XDG_CONFIG_HOME
.
Teoricamente, isso significa que se você quiser que seus arquivos de configuração sejam armazenados em algum outro lugar, basta definir $XDG_CONFIG_HOME
para o local preferido.
Na prática, no entanto, você pode encontrar instâncias de software que gravam cegamente em $HOME/.config/...
em vez de seguir a Especificação XDG. Particularmente, como não é uma parte necessária de qualquer distribuição.
Para aplicativos que seguem o XDG, você também pode ter um conjunto de diretórios ( $XDG_CONFIG_DIRS
colon-separado, como $PATH
) que definem outros locais dos quais os valores padrão devem ser originados. O valor padrão para isso deve ser /etc/xdg
.
Agora, a próxima pergunta que deve estar em seus lábios é: "OK, então onde eu defino $XDG_CONFIG_HOME
?" e infelizmente isso fica bastante complicado .
O resumo parece ser que você provavelmente conseguirá colocá-lo em .profile
(ou .bash_profile
, .bashrc
), mas que uma configuração global via PAM pode ser necessária. Pessoalmente, eu não tentei isso e, em particular, não vejo como uma solução baseada em .profile
poderia funcionar com um ambiente de login baseado em GUI.
A segunda pergunta pode ser "Como faço para mover minha configuração para esse novo local?", que também é . Suspiro.
A opção mais fácil aqui é provavelmente usar um link simbólico que aponta $HOME/.config
para o seu local preferido. Isso lida não apenas com problemas com a configuração de $XDG_CONFIG_DIR
, mas também com quaisquer problemas com aplicativos que insistem em procurar diretamente em $HOME/.config
.
cd
test -d .config && mv .config .config_old
ln -s /path/to/preferred_config_dir .config