Hello,

Introduction
*************

If you work with the same /home/ for years, you will agree that hidden
folders are becoming an huge mess. When upgrading, it might even introduce
bugs not reproducible anywhere else than on your configuration, it requires
you to create a new account when you want to test a true default
configuration and that's only a part of the problem. The problem is
described here :
http://ploum.frimouvy.org/?184-cleaning-user-preferences-keeping-user-data

Hopefully, FreeDesktop.org has issued a recommandation for applications to
handle their preferences/data/hidden folders :
http://standards.freedesktop.org/basedir-spec/latest/ar01s03.html

I've written a Gnome goal proposal to implement this spec everywhere in
Gnome and I've received some enthousiast feedbacks :
http://live.gnome.org/GnomeGoals/XDGConfigFolders


It looks like a lot of people agree on the problem and would like to see a
solution. Then, I want to bring things further and discuss the "how to do
it".


Disclaimer
************

**WARNING** It should be clear for everyone that want to work on this what
the spec really is. The spec is *NOT* about putting all our old hidden
folder in a .config one, like some people tend to think. It must be clear
that the folder $XDG_CONFIG_HOME should be deletable without any data loss.
See the Gnome goal page for more information.


Discussion
************

What follows is only my personnal opinion as a non specialist. Everything is
always open to discussion :

For some applications, the migration is quite simple. It's a matter of
putting a few files in some other folders than their own hidden folder or
.gnome2 (which should disappear completely, IMHO). For applications that
interact heavily with others, things might be complicated. A lot of bugs
have already been reported and are tracked by the tracker bug
http://bugzilla.gnome.org/show_bug.cgi?id=523057

Then, there is the question : "What about gconf ?". I think that gconf
should itself store preferences of applications in $XDG_CONFIG_HOME and user
data in $XDG_DATA_HOME, without the need of creating a specific gconf folder
in those folders. The usage of gconf should also be clarified : why have
some application a lot of gconf entries and files in their hidden folder
(e.g. : epiphany). Worst : why have some applications a strict dependancy
between data stored in gconf and their hidden folder (eg : evolution) ? I
see two approach :

1) Say that gconf is only for configuuration purpose. No data should ever be
stored with gconf otherwise it's a bug. I don't know what the current status
of applications using gconf is.

2) Add a property to each gconf key (or group of keys) telling if the key is
a cache element, a configuration element, a data element. The value of this
property should be set by the application when creating the key.



What do you think ? How do you see this problem ? Do you see any other major
issue ?

Thanks for your attention and your work on Gnome,

Lionel
_______________________________________________
gnome-love mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-love

Reply via email to