diff options
author | Taylor Gerring <taylor.gerring@gmail.com> | 2015-02-26 09:32:27 +0800 |
---|---|---|
committer | Taylor Gerring <taylor.gerring@gmail.com> | 2015-02-26 09:32:27 +0800 |
commit | d5aed82b11589bb3f8b0df4544081fe898b8c724 (patch) | |
tree | 3dc0bce88e1977145babf50f3017bad73a92919d /ethutil | |
parent | 8eeab7ea3fb7a01a610e46940141eecf7435873a (diff) | |
download | dexon-d5aed82b11589bb3f8b0df4544081fe898b8c724.tar.gz dexon-d5aed82b11589bb3f8b0df4544081fe898b8c724.tar.zst dexon-d5aed82b11589bb3f8b0df4544081fe898b8c724.zip |
DRY DefaultAssetPath()
Diffstat (limited to 'ethutil')
-rw-r--r-- | ethutil/common.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/ethutil/common.go b/ethutil/common.go index efc519732..d439dcedc 100644 --- a/ethutil/common.go +++ b/ethutil/common.go @@ -2,6 +2,7 @@ package ethutil import ( "fmt" + "github.com/kardianos/osext" "math/big" "os/user" "path" @@ -9,6 +10,31 @@ import ( "time" ) +func DefaultAssetPath() string { + var assetPath string + // If the current working directory is the go-ethereum dir + // assume a debug build and use the source directory as + // asset directory. + pwd, _ := os.Getwd() + if pwd == path.Join(os.Getenv("GOPATH"), "src", "github.com", "ethereum", "go-ethereum", "cmd", "mist") { + assetPath = path.Join(pwd, "assets") + } else { + switch runtime.GOOS { + case "darwin": + // Get Binary Directory + exedir, _ := osext.ExecutableFolder() + assetPath = filepath.Join(exedir, "../Resources") + case "linux": + assetPath = "/usr/share/mist" + case "windows": + assetPath = "./assets" + default: + assetPath = "." + } + } + return assetPath +} + func DefaultDataDir() string { usr, _ := user.Current() if runtime.GOOS == "darwin" { |