$ HOME Каталог /.config
является частью спецификации XDG и определяется значением $ XDG_CONFIG_HOME
.
Теоретически это означает, что если вы хотите, чтобы ваши файлы конфигурации хранились где-то еще, вам просто нужно установить $ XDG_CONFIG_HOME
в это предпочтительное место.
На практике, однако, вы вполне можете найти экземпляры программного обеспечения, которое слепо записывает в $ HOME / .config / ...
вместо того, чтобы следовать спецификации XDG. Тем более, что это не обязательная часть любого дистрибутива.
Для приложений, которые следуют XDG, вы также можете иметь набор каталогов ( $ XDG_CONFIG_DIRS
через двоеточие, например $ PATH
), которые определяют другие местоположения, из которых должны быть источник. Значение по умолчанию для этого должно быть / etc / xdg
.
Теперь следующий вопрос, который должен быть у вас на устах: «Хорошо, а где мне установить $ XDG_CONFIG_HOME
?» и, к сожалению, это становится довольно сложным .
Вкратце, похоже, вам удастся поместить его в .profile
(или .bash_profile
, ).bashrc
), но может потребоваться глобальная конфигурация через PAM. Лично я этого не пробовал и, в частности, не понимаю, как решение на основе .profile
может работать со средой входа на основе графического интерфейса пользователя.
Второй вопрос может быть таким: «Как мне переместить мою конфигурацию в это новое место?», Что также чревато потенциальными проблемами . Вздох.
Самый простой вариант - это, вероятно, использовать символическую ссылку, указывающую $ HOME / .config
на ваше предпочтительное местоположение. Это решает не только любые проблемы с установкой $ XDG_CONFIG_DIR
, но также любые проблемы с приложениями, которые настаивают на поиске непосредственно в $ HOME / .config
.
cd
test -d .config && mv .config .config_old
ln -s /path/to/preferred_config_dir .config
В GNU coreutils есть утилита timeout
именно для этого, запустите:
timeout 86400 cat ... > ...