← Back to team overview

kicad-developers team mailing list archive

Re: XDG_CONFIG_HOME on all platforms

 

Hi Wayne,

I have no personal problem with your patch, but from a standards point of view I want to raise this.

As per: https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html |"$XDG_CONFIG_HOME| defines the base directory relative to which user specific configuration files should be stored. If |$XDG_CONFIG_HOME| is either not set or empty, a default equal to |$HOME|/.config should be used."

The way I read your patch is that, XDG_CONFIG_HOME is being used to specify the absolute path of the kicad configuration directory, not it's relative base directory.

My concern is that if XDG_CONFIG_HOME is set to someones "relative base config directory", then that relative base config directory is going to get filled with kicad config files.

Also, on unix, wxStandardPaths::Get().GetUserConfigDir() uses XDG_CONFIG_HOME internally, so the current kicad specific support for XDG_CONFIG_HOME (as a relative base directory) is redundant. see: https://github.com/wxWidgets/wxWidgets/blob/master/src/unix/stdpaths.cpp

Maybe its better to just define a new Kicad specific environment variable for the purpose, "KICAD_CONFIG_HOME" for example.  Then there is no conflict with any existing uses or standards, your patch as written, would also then remove the redundant of processing XDG_CONFIG_HOME.

Steven

On 24/04/18 01:10, Wayne Stambaugh wrote:
Attached is a patch that allows users to have multiple configuration
paths using the XDG_CONFIG_HOME environment variable on all platforms.
I tested it on windows and it seems to work just fine.  I can test it on
linux tonight when I get home but if someone can get to it before then I
would appreciate the help.  Would one of our macos devs please test it
as well before I merge it.

Thanks,

Wayne


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp



Follow ups

References