DRY DefaultAssetPath()

This commit is contained in:
Taylor Gerring
2015-02-26 02:32:27 +01:00
parent 8eeab7ea3f
commit d5aed82b11
3 changed files with 27 additions and 54 deletions

View File

@ -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" {