Geralmente isso não é possível, pois os programas tendem a hardcode (coloque o caminho diretamente no código-fonte) o caminho do diretório de configuração (existem exceções, veja a resposta da linha).
Por exemplo:
Eu uso stackapplet
, o que me informa sobre alterações de status em minha conta askubuntu. Em seu código diz ( config_store.py
):
CONFIG_FILE_PATH = os.path.join(os.path.expanduser("~"),".stackapplet")
que define o CONFIG_FILE_PATH
para ~/.stackapplet
. Eu teria que alterar o código-fonte manualmente para substituir isso.
Outro exemplo: wireshark
homedir = getenv("HOME");
if (homedir == NULL) {
pwd = getpwuid(getuid());
if (pwd != NULL) {
homedir = g_strdup(pwd->pw_dir);
} else
homedir = "/tmp";
}
persconffile_dir = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s", homedir, PF_DIR);
Isso obtém o caminho do diretório inicial a partir da variável de ambiente HOME ou da entrada /etc/passwd
para o usuário atual ou o define como /tmp
se tudo falhar.
Programas diferentes obtêm o caminho HOME de maneiras diferentes, você não pode alterar todas as referências "home" para /home/user/.config
.