her*_*ain 1 environment-variables home
我想知道我是否可以做这样的事情:
export HOME=$HOME:$HOME/.configs
这样我就可以将所有自定义配置保存在 ~/.configs 中。
我知道可以设置它,但我不确定它是否会导致问题。这安全吗?有没有更标准的方法?
该$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基于 GUI 的登录环境如何使用基于解决方案的解决方案。
第二个问题可能是“我如何将我的配置移动到这个新位置?”,这也充满了潜在的问题。叹。
这里最简单的选择可能是使用指向$HOME/.config您首选位置的符号链接。这不仅可以处理任何设置问题,$XDG_CONFIG_DIR还可以处理任何坚持直接在$HOME/.config.
cd
test -d .config && mv .config .config_old
ln -s /path/to/preferred_config_dir .config
Run Code Online (Sandbox Code Playgroud)