github.com/hyperledger/burrow@v0.34.5-0.20220512172541-77f09336001d/keys/common/paths.go (about)

     1  package common
     2  
     3  import (
     4  	"os"
     5  	"path/filepath"
     6  	"runtime"
     7  )
     8  
     9  func HomeDir() string {
    10  	if runtime.GOOS == "windows" {
    11  		drive := os.Getenv("HOMEDRIVE")
    12  		path := os.Getenv("HOMEPATH")
    13  		if drive == "" || path == "" {
    14  			return os.Getenv("USERPROFILE")
    15  		}
    16  		return drive + path
    17  	} else {
    18  		return os.Getenv("HOME")
    19  	}
    20  }
    21  
    22  func ResolveMonaxRoot() string {
    23  	var monax string
    24  	if os.Getenv("MONAX") != "" {
    25  		monax = os.Getenv("MONAX")
    26  	} else {
    27  		if runtime.GOOS == "windows" {
    28  			home := os.Getenv("HOMEDRIVE") + os.Getenv("HOMEPATH")
    29  			if home == "" {
    30  				home = os.Getenv("USERPROFILE")
    31  			}
    32  			monax = filepath.Join(home, ".monax")
    33  		} else {
    34  			monax = filepath.Join(HomeDir(), ".monax")
    35  		}
    36  	}
    37  	return monax
    38  }