github.com/x-helm/helm@v3.0.0-beta.3+incompatible/pkg/helmpath/lazypath_unix.go (about) 1 // Copyright The Helm Authors. 2 // Licensed under the Apache License, Version 2.0 (the "License"); 3 // you may not use this file except in compliance with the License. 4 // You may obtain a copy of the License at 5 6 // http://www.apache.org/licenses/LICENSE-2.0 7 8 // Unless required by applicable law or agreed to in writing, software 9 // distributed under the License is distributed on an "AS IS" BASIS, 10 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 // See the License for the specific language governing permissions and 12 // limitations under the License. 13 14 // +build !windows,!darwin 15 16 package helmpath 17 18 import ( 19 "path/filepath" 20 21 "k8s.io/client-go/util/homedir" 22 ) 23 24 // dataHome defines the base directory relative to which user specific data files should be stored. 25 // 26 // If $XDG_DATA_HOME is either not set or empty, a default equal to $HOME/.local/share is used. 27 func dataHome() string { 28 return filepath.Join(homedir.HomeDir(), ".local", "share") 29 } 30 31 // configHome defines the base directory relative to which user specific configuration files should 32 // be stored. 33 // 34 // If $XDG_CONFIG_HOME is either not set or empty, a default equal to $HOME/.config is used. 35 func configHome() string { 36 return filepath.Join(homedir.HomeDir(), ".config") 37 } 38 39 // cacheHome defines the base directory relative to which user specific non-essential data files 40 // should be stored. 41 // 42 // If $XDG_CACHE_HOME is either not set or empty, a default equal to $HOME/.cache is used. 43 func cacheHome() string { 44 return filepath.Join(homedir.HomeDir(), ".cache") 45 }