PDA

View Full Version : Regnum Online doesn't follow the XDG Base Directory Specification


Ertial
01-15-2010, 12:05 PM
On Linux the Regnum Online client stores two pieces of data in your home folder: the hidden folder '.ngdstudios' and the hidden file '.rolauncher'.

However, they're stored right in ~, your home root directory. This doesn't follow the FreeDesktop XDG Base Directory Specification (http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html), and therefore rolauncher is one of the (too) many applications cluttering your home directory.

The XDG Base Directory Specification creates three different locations for configuration files, data and cache. The user can control this location and so relocate data if he'd wanted to.
There are:

$XDG_DATA_HOME, default: ~/.local/share/ (You cry when you lose this.)
$XDG_CONFIG_HOME ~/.config/ (Your settings are lost, but nothing unrecoverable.)
$XDG_CACHE_HOME ~/.cache/ (Your computer is slow at first when this is gone.)


I assume that it would be the best solution to store both files of the Regnum Online client in $XDG_CONFIG_HOME.

For getting the $XDG_CONFIG_HOME variable you can use the Glib function 'g_get_user_config_dir() (http://library.gnome.org/devel/glib/stable/glib-Miscellaneous-Utility-Functions.html#g-get-user-config-dir)' when using C.

Also see this blogpost: Modify your application to use XDG folders (http://ploum.frimouvy.org/?207-modify-your-application-to-use-xdg-folders).