diff options
author | Matthew Holt <[email protected]> | 2019-12-31 18:31:43 -0700 |
---|---|---|
committer | Matthew Holt <[email protected]> | 2019-12-31 18:31:43 -0700 |
commit | 06ea0a52950ef6d1dd327c10e247ada1b71a5c5d (patch) | |
tree | 0c369a5410adb561c88dd3df7e1f921addda041e | |
parent | 788462bd4c9c332b3f892094b1d17147378f5e6a (diff) | |
download | caddy-06ea0a52950ef6d1dd327c10e247ada1b71a5c5d.tar.gz caddy-06ea0a52950ef6d1dd327c10e247ada1b71a5c5d.zip |
Tune AppConfigDir and docs for Storage module
-rw-r--r-- | caddy.go | 9 | ||||
-rw-r--r-- | storage.go | 15 |
2 files changed, 11 insertions, 13 deletions
@@ -61,11 +61,10 @@ type Config struct { Logging *Logging `json:"logging,omitempty"` // StorageRaw is a storage module that defines how/where Caddy - // stores assets (such as TLS certificates). By default, this is - // the local file system (`caddy.storage.file_system` module). - // If the `XDG_DATA_HOME` environment variable is set, then - // `$XDG_DATA_HOME/caddy` is the default folder. Otherwise, - // `$HOME/.local/share/caddy` is the default folder. + // stores assets (such as TLS certificates). The default storage + // module is `caddy.storage.file_system` (the local file system), + // and the default path + // [depends on the OS and environment](/docs/conventions#data-directory). StorageRaw json.RawMessage `json:"storage,omitempty" caddy:"namespace=caddy.storage inline_key=module"` // AppsRaw are the apps that Caddy will load and run. The diff --git a/storage.go b/storage.go index b7dcfe44f..03f769176 100644 --- a/storage.go +++ b/storage.go @@ -84,14 +84,13 @@ func homeDirUnsafe() string { // // Ref: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html func AppConfigDir() string { - basedir := os.Getenv("XDG_CONFIG_HOME") - if basedir == "" { - var err error - basedir, err = os.UserConfigDir() - if err != nil { - Log().Warn("unable to determine directory for user configuration; falling back to current directory", zap.Error(err)) - return "./caddy" - } + if basedir := os.Getenv("XDG_CONFIG_HOME"); basedir != "" { + return filepath.Join(basedir, "caddy") + } + basedir, err := os.UserConfigDir() + if err != nil { + Log().Warn("unable to determine directory for user configuration; falling back to current directory", zap.Error(err)) + return "./caddy" } subdir := "caddy" switch runtime.GOOS { |