Commit 87b73284 authored by Alexander Gehrke's avatar Alexander Gehrke Committed by Max Kellermann

CommandLine.cxx: look for config file in XDG_CONFIG_HOME too

Look for "$XDG_CONFIG_HOME/mpd/mpd.conf", similar to where mpd looks for the file under Windows.
parent 3f846cf6
......@@ -196,9 +196,9 @@ Run
$ mpd <config file>
First default is ~/.mpdconf then ~/.mpd/mpd.conf then /etc/mpd.conf. If
neither of these exist a mpd configuration file must be specified at
runtime.
First default is $XDG_CONFIG_HOME/mpd/mpd.conf then ~/.mpdconf then
~/.mpd/mpd.conf then /etc/mpd.conf. If neither of these exist a mpd
configuration file must be specified at runtime.
A sample config file is included with the source of MPD, mpdconf.example.
......
......@@ -12,8 +12,8 @@ stores info about all available music, and this info can be easily searched and
retrieved. Player control, info retrieval, and playlist management can all be
managed remotely.
MPD searches for a config file in \fB~/.mpdconf\fP then \fB/etc/mpd.conf\fP or
uses CONF_FILE.
MPD searches for a config file in \fB$XDG_CONFIG_HOME/mpd/mpd.conf\fP then
\fB~/.mpdconf\fP then \fB/etc/mpd.conf\fP or uses CONF_FILE.
Read more about MPD at <\fBhttp://www.musicpd.org/\fP>.
.SH OPTIONS
......
......@@ -3,8 +3,9 @@
mpd.conf \- Music Player Daemon configuration file
.SH DESCRIPTION
\fBmpd.conf\fP is the configuration file for mpd(1). If not specified on the
command line, MPD first searches for it at \fB~/.mpdconf\fP then at
\fB~/.mpd/mpd.conf\fP and then in \fB/etc/mpd.conf\fP.
command line, MPD first searches for it at \fB$XDG_CONFIG_HOME/mpd/mpd.conf\fP
then at \fB~/.mpdconf\fP then at \fB~/.mpd/mpd.conf\fP and then in
\fB/etc/mpd.conf\fP.
Lines beginning with a "#" character are comments. All other non-empty lines
specify parameters and their values. These lines contain the parameter name
......
......@@ -54,6 +54,7 @@
#else /* G_OS_WIN32 */
#define USER_CONFIG_FILE_LOCATION1 ".mpdconf"
#define USER_CONFIG_FILE_LOCATION2 ".mpd/mpd.conf"
#define USER_CONFIG_FILE_LOCATION_XDG "mpd/mpd.conf"
#endif
static GQuark
......@@ -219,7 +220,12 @@ parse_cmdline(int argc, char **argv, struct options *options,
return ReadConfigFile(path, error_r);
}
#else /* G_OS_WIN32 */
Path path = PathBuildChecked(Path::FromUTF8(g_get_home_dir()),
Path path = PathBuildChecked(Path::FromUTF8(g_get_user_config_dir()),
USER_CONFIG_FILE_LOCATION_XDG);
if (!path.IsNull() && FileExists(path))
return ReadConfigFile(path, error_r);
path = PathBuildChecked(Path::FromUTF8(g_get_home_dir()),
USER_CONFIG_FILE_LOCATION1);
if (!path.IsNull() && FileExists(path))
return ReadConfigFile(path, error_r);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment