ホームフォルダにデフォルトの構成ディレクトリを設定できますか?
私は嫌い:
/home/user/Documents
/home/user/Music
/home/user/.progconf1
/home/user/.progconf2
が欲しいです:
/home/user/Documents
/home/user/Music
/home/user/.config/.progconf1
/home/user/.config/.progconf2
プログラムはハードコード(パスをソースコードに直接入力)configディレクトリパス(例外が存在する、darentの答えを参照)になる傾向があるため、一般にこれは不可能です。
例えば:
Askubuntuアカウントのステータス変更を通知するstackapplet
を使用しています。そのコードには(config_store.py
)と書かれています:
CONFIG_FILE_PATH = os.path.join(os.path.expanduser("~"),".stackapplet")
CONFIG_FILE_PATH
を~/.stackapplet
に設定します。これをオーバーライドするには、ソースコードを手動で変更する必要があります。
別の例: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);
これは、HOME環境変数または現在のユーザーの/etc/passwd
エントリからホームディレクトリパスを取得するか、すべてが失敗した場合に/tmp
に設定します。
さまざまなプログラムがさまざまな方法でHOMEパスを取得します。すべての「ホーム」参照を/home/user/.config
に変更することはできません。
それはシステムよりも各プログラムに依存します。場合によっては、特定の構成へのショートカットを使用して起動できます。すなわち:
conky -c /home/user/.config/.conkyrc
dosbox /home/user/.config/.dosbox/
これらのコマンドは、構成を.configに保存します(私は私の家が小さなファイルやフォルダーでいっぱいであることも嫌いです)。しかし、デフォルトにする方法があるかどうか、または各プログラムの設定と起動を設定する必要があるかどうかはわかりません(設定できる場合)。それはあなたの全体の$ HOME値を変更することを意味するので、私は考えていません。私が間違っている場合、誰かが私を修正します。