dnote/pkg/cli/dirs/dirs_unix.go
Sung Won Cho e9f3b080d5
Use XDG base directory (#527)
* Create platform specific directory definitions

* Fix CLI integration test

* Rename dirs to paths and get config path

* Namespace

* Fix initialization of dirs

* Simplify and change description

* Simplify

* Fix build flag

* Bump sqlite version

* Bump xgo
2021-01-03 12:11:22 +11:00

33 lines
730 B
Go

// +build linux darwin
package dirs
import (
"path/filepath"
)
// The environment variable names for the XDG base directory specification
var (
envConfigHome = "XDG_CONFIG_HOME"
envDataHome = "XDG_DATA_HOME"
envCacheHome = "XDG_CACHE_HOME"
)
func initDirs() {
Home = getHomeDir()
ConfigHome = readPath(envConfigHome, getConfigHome(Home))
DataHome = readPath(envDataHome, getDataHome(Home))
CacheHome = readPath(envCacheHome, getCacheHome(Home))
}
func getConfigHome(homeDir string) string {
return filepath.Join(homeDir, ".config")
}
func getDataHome(homeDir string) string {
return filepath.Join(homeDir, ".local/share")
}
func getCacheHome(homeDir string) string {
return filepath.Join(homeDir, ".cache")
}