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