1
0
Fork 0
forked from External/grumble

Merge PR #16: Use %USERPROFILE% instead of $HOME on Windows for Grumble's default data dir.

This commit is contained in:
Mikkel Krautz 2018-01-13 21:35:54 +01:00 committed by GitHub
commit f53f5b7e00
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -9,10 +9,11 @@ import (
) )
type UsageArgs struct { type UsageArgs struct {
Version string Version string
BuildDate string BuildDate string
OS string OS string
Arch string Arch string
DefaultDataDir string
} }
var usageTmpl = `usage: grumble [options] var usageTmpl = `usage: grumble [options]
@ -23,7 +24,7 @@ var usageTmpl = `usage: grumble [options]
--help --help
Shows this help listing. Shows this help listing.
--datadir <data-dir> (default: $HOME/.grumble) --datadir <data-dir> (default: {{.DefaultDataDir}})
Directory to use for server storage. Directory to use for server storage.
--log <log-path> (default: $DATADIR/grumble.log) --log <log-path> (default: $DATADIR/grumble.log)
@ -54,11 +55,12 @@ type args struct {
} }
func defaultDataDir() string { func defaultDataDir() string {
homedir := os.Getenv("HOME")
dirname := ".grumble" dirname := ".grumble"
if runtime.GOOS == "windows" { if runtime.GOOS == "windows" {
dirname = "grumble" homedir = os.Getenv("USERPROFILE")
} }
return filepath.Join(os.Getenv("HOME"), dirname) return filepath.Join(homedir, dirname)
} }
func defaultLogPath() string { func defaultLogPath() string {
@ -72,10 +74,11 @@ func Usage() {
} }
err = t.Execute(os.Stdout, UsageArgs{ err = t.Execute(os.Stdout, UsageArgs{
Version: version, Version: version,
BuildDate: buildDate, BuildDate: buildDate,
OS: runtime.GOOS, OS: runtime.GOOS,
Arch: runtime.GOARCH, Arch: runtime.GOARCH,
DefaultDataDir: defaultDataDir(),
}) })
if err != nil { if err != nil {
panic("unable to execute usage template") panic("unable to execute usage template")