What constitutes "user configuration files" in the XDG basedir spec?
Dieter Plaetinck
dieter at plaetinck.be
Wed Jan 14 12:23:46 PST 2009
Rodney Dawes wrote:
> On Sat, 2009-01-10 at 22:09 +0100, Dieter Plaetinck wrote:
>
>> Hi all,
>> at http://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html
>> it is explained that $XDG_DATA_{HOME,DIRS} is for "(user specific) data
>> files" and $XDG_CONFIG_{HOME,DIRS} for "(user specific) configuration
>> files".
>> However, it is not exactly explained what each mean.
>>
>> Specifically, afaik everything that goes into $XDG_CONFIG_HOME should be
>> controlled by the user himself, eg any update of files in this directory
>> is the result of:
>> - the user updating the file himself manually.
>> - the file being updated because the user changed one or more settings
>> in a GUI panel.
>>
>> Eg: Isn't it wrong for software to update files in $XDG_CONFIG_HOME (and
>> by extension $XDG_CONFIG_DIRS) around the users back?
>> I've seen many programs who store things like "last window position",
>> "last 10 opened items" etc in $XDG_CONFIG_HOME. I don't think this is
>> what $XDG_CONFIG_HOME is for (I think this belongs in the user data
>> category), but then again, I couldn't find this being defined in the spec.
>>
>> Do you agree with this point of view?
>> If so, I would be happy to contribute an updated version of the spec
>> based on the above wordings.
>>
>
> If I resize my app's window to be more suitable for my uses, where
> should that configuration be saved then? It is configuration data,
> though all configuration data may not necessarily be what you expect
> it to be.
>
>
It is not *user configuration*. Your program comes up with that by
itself, your user probably doesn't even know about this.
Imho, the best match is "user specific non-essential data files", hence
$XDG_CACHE_HOME.
I hereby propose a draft of an updated version of the spec:
http://users.edpnet.be/dieter/basedir-spec-0.7-PROPOSAL.html
What I did is just add a section "examples" which describes a bit more
in detail what belongs where and gives some practical examples.
It's based on what I could find in previous posts on this mailing list
and -obviously - largely on my own interpretation, so I would like to
hear opinions about this and maybe start a discussion.
Either way, I think the current spec is a bit too unclear and could
really use some practical examples as guidance for application developers.
Dieter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freedesktop.org/archives/xdg/attachments/20090114/203b74ae/attachment.htm
More information about the xdg
mailing list