I think that UFRaw should use same locations than the vast majority of Desktop environment and applications.
There are real advantages of following this specification :
- a lot less cluttered $HOME
- Make backups a lot more safer and easier.
Backuping your $XDG_DATA_HOME along with your files is enough
(or just excluding $XDG_CACHE_HOME)
- A lot easier to reset a default configuration if you want/need it (and
without any risk to loose informations). Even for the software itself
could choose to reset $XDG_CONFIG_HOME if needed.
- Avoid some strange bugs that happens because you had a old version of
some configuration file
- A lot more of flexibility and portability because no path are hardcoded.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I do not like the idea of moving files around without asking the user, so I changed it a little. UFRaw will use ~/.ufrawrc without moving it if it exists or create and use $XDG_CONFIG_HOME/ufrawrc otherwise. The changes are in the current cvs repository.
Regards,
Niels Kristian
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
According to XDG Base directory specification:
User data should go into $XDG_DATA_HOME (which default to ~/.local/share),
user preferences should go into $XDG_CONFIG_HOME (which default to ~/.config)
and cached data should go to $XDG_CACHE_HOME (which default to ~/.cache).
More details at :
http://ploum.net/post/207-modify-your-application-to-use-xdg-folders
https://live.gnome.org/GnomeGoals/XDGConfigFolders
Full specification can be found at:
http://standards.freedesktop.org/basedir-spec/latest/
The Freedesktop.org XDG base directory specification have good de facto adoption.
It has been adopted by:
- GNOME ( https://live.gnome.org/GnomeGoals/XDGConfigFolders )
- GTK+ ( https://bugzilla.gnome.org/show_bug.cgi?id=646631 )
- KDE ( http://techbase.kde.org/KDE_System_Administration/XDG_Filesystem_Hierarchy#Freedesktop.org_and_Standard_Directories )
- QT ( http://harmattan-dev.nokia.com/docs/library/html/qt4/qsettings.html#setPath )
- XFCE ( http://docs.xfce.org/xfce/xfce4-session/advanced in Files and Environment Variables )
- LXDE
- Razor-qt
- VLC ( https://trac.videolan.org/vlc/ticket/1267 )
- GStreamer ( https://bugzilla.gnome.org/show_bug.cgi?id=518597 )
- Chrome ( http://code.google.com/p/chromium/issues/detail?id=16976 )
- many more upstream applications
- Ubuntu ( http://brainstorm.ubuntu.com/idea/6557/ & http://packages.ubuntu.com/fr/source/precise/libxdg-basedir )
- Debian ( http://packages.debian.org/squeeze/libxdg-basedir1 )
- Red Hat
- Fedora
- Suse
- many more distributions
I think that UFRaw should use same locations than the vast majority of Desktop environment and applications.
There are real advantages of following this specification :
- a lot less cluttered $HOME
- Make backups a lot more safer and easier.
Backuping your $XDG_DATA_HOME along with your files is enough
(or just excluding $XDG_CACHE_HOME)
- A lot easier to reset a default configuration if you want/need it (and
without any risk to loose informations). Even for the software itself
could choose to reset $XDG_CONFIG_HOME if needed.
- Avoid some strange bugs that happens because you had a old version of
some configuration file
- A lot more of flexibility and portability because no path are hardcoded.
How about something like this? It moves ~/.ufrawrc (if it exists) to $XDG_CONFG_HOME/ufrawrc and uses a new location going forward.
Last edit: Lev Babiev 2014-08-25
Hi Lev.
Thanks for the patch.
I do not like the idea of moving files around without asking the user, so I changed it a little. UFRaw will use ~/.ufrawrc without moving it if it exists or create and use $XDG_CONFIG_HOME/ufrawrc otherwise. The changes are in the current cvs repository.
Regards,
Niels Kristian