Iva*_*van 43 configuration posix freedesktop home dot-files
我注意到一些应用程序将它们的配置文件放在其中,~/.config/appname而其他应用程序为此使用~/.appname(经典方式,AFAIK)。这种区别有什么意义,我的应用程序可以更好地考虑什么?
更新:看起来我的(XUbuntu 11.10 默认)$XDG_CONFIG_HOME 设置为~/并且我系统中的大多数应用程序(如 Mozilla Firefox、Adobe Flash Player、Midnight Commander、Opera、Wine 等)都符合这一点。但仍有许多应用程序(如 Compiz、Deadbeef、VLC、Qt Creator、Google Chrome、XFCE 等)在使用~/.config/。另一个可疑的事情是目录~/.config/本身不是隐藏的(它们的名称中没有点) - 应用程序配置目录是否不希望在不依赖于位置($XDG_CONFIG_HOME 值)的情况下具有恒定的自己的名称?
Mes*_*ion 52
对 jasonwryan 出色回答的补充,解决了您的一些问题:
您$XDG_CONFIG_HOME的未设置为~/. 它根本没有设置。所以遵循 XDG 规范的应用程序使用默认的~/.config
里面的目录/.config没有隐藏,因为他们没有必要。使用的整点~/.configDIR是未杂波用户$HOME。因为它们已经在一个单独的隐藏目录中,所以没有必要隐藏在那里。
不遵循规范的软件(不幸的是仍然是绝大多数)对其设置(如~/.myapp)使用隐藏目录,以试图不弄乱用户的$HOME. 它(有点)有效,但当您尝试分别备份设置和“大数据”(如图片、视频、音乐)时,它仍然是一种糟糕的方法。将所有设置放在一个地方,而不与用户的数据混合,是一种更好的方法
至于“无论XDG_CONFIG_HOME指向何处都具有常量名称”,他们已经这样做了:它appname 没有前导点。请记住:使用的$HOME/.appname是那些忽略XDG 规范的。他们使用硬编码路径。
至于您的应用,请使用 XDG 标准!我求求你,你的用户会感谢你不要再把他们的主目录弄得乱七八糟。
jas*_*yan 28
因为那些放置配置文件的应用程序$HOME忽略了XDG 基本目录规范,特别是:
有一个相对于应该写入用户特定配置文件的基本目录。该目录由环境变量 $XDG_CONFIG_HOME 定义...
如果 $XDG_CONFIG_HOME 未设置或为空,则应使用等于 $HOME/.config 的默认值。
一个比较有争议的答案是:
~/.config是 XDG 标准的默认值,它仅适用于遵守 FreeDesktop.org 标准的应用程序(也通过使用$XDG_CONFIG_HOME变量)。~/.appname 在自由桌面标准之前存在$HOME在我看来,“杂乱”不是问题。| 归档时间: |
|
| 查看次数: |
8370 次 |
| 最近记录: |