forked from Elara6331/itd
		
	Add config defaults and run go fmt
This commit is contained in:
		
							
								
								
									
										47
									
								
								config.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								config.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| package main | ||||
|  | ||||
| import ( | ||||
| 	"os" | ||||
| 	"strings" | ||||
|  | ||||
| 	"github.com/rs/zerolog" | ||||
| 	"github.com/rs/zerolog/log" | ||||
| 	"github.com/spf13/viper" | ||||
| ) | ||||
|  | ||||
| func init() { | ||||
| 	// Set up logger | ||||
| 	log.Logger = log.Output(zerolog.ConsoleWriter{Out: os.Stderr}) | ||||
|  | ||||
| 	// Set config settings | ||||
| 	setCfgDefaults() | ||||
| 	viper.AddConfigPath("$HOME/.cmonfig") | ||||
| 	viper.AddConfigPath("/etoc") | ||||
| 	viper.SetConfigName("itd") | ||||
| 	viper.SetConfigType("toml") | ||||
| 	viper.WatchConfig() | ||||
| 	viper.SetEnvKeyReplacer(strings.NewReplacer(".", "_")) | ||||
| 	viper.SetEnvPrefix("itd") | ||||
| 	// Ignore error because defaults set | ||||
| 	viper.ReadInConfig() | ||||
| 	viper.AutomaticEnv() | ||||
| } | ||||
|  | ||||
| func setCfgDefaults() { | ||||
| 	viper.SetDefault("cfg.version", 2) | ||||
|  | ||||
| 	viper.SetDefault("socket.path", "/tmp/itd/socket") | ||||
|  | ||||
| 	viper.SetDefault("conn.reconnect", true) | ||||
|  | ||||
| 	viper.SetDefault("on.connect.notify", true) | ||||
|  | ||||
| 	viper.SetDefault("on.reconnect.notify", true) | ||||
| 	viper.SetDefault("on.reconnect.setTime", true) | ||||
|  | ||||
| 	viper.SetDefault("notifs.ignore.sender", []string{}) | ||||
| 	viper.SetDefault("notifs.ignore.summary", []string{"InfiniTime"}) | ||||
| 	viper.SetDefault("notifs.ignore.body", []string{}) | ||||
|  | ||||
| 	viper.SetDefault("music.vol.interval", 5) | ||||
| } | ||||
							
								
								
									
										4
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.mod
									
									
									
									
									
								
							| @@ -19,7 +19,7 @@ require ( | ||||
| 	github.com/spf13/cast v1.4.1 // indirect | ||||
| 	github.com/spf13/cobra v1.2.1 | ||||
| 	github.com/spf13/viper v1.8.1 | ||||
| 	go.arsenm.dev/infinitime v0.0.0-20210822201216-955384489609 | ||||
| 	golang.org/x/sys v0.0.0-20210820121016-41cdb8703e55 // indirect | ||||
| 	go.arsenm.dev/infinitime v0.0.0-20210823171603-8648afeebf08 | ||||
| 	golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf // indirect | ||||
| 	golang.org/x/text v0.3.7 // indirect | ||||
| ) | ||||
|   | ||||
							
								
								
									
										4
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.sum
									
									
									
									
									
								
							| @@ -289,6 +289,8 @@ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9dec | ||||
| github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= | ||||
| go.arsenm.dev/infinitime v0.0.0-20210822201216-955384489609 h1:QH7hsVjulEs1OP8lcQ7EfVy2UO/rtwRsxUo3ylde83E= | ||||
| go.arsenm.dev/infinitime v0.0.0-20210822201216-955384489609/go.mod h1:gaepaueUz4J5FfxuV19B4w5pi+V3mD0LTef50ryxr/Q= | ||||
| go.arsenm.dev/infinitime v0.0.0-20210823171603-8648afeebf08 h1:eh/ZfShWAYhi3UR6nrX+5mORDvN58A1T+NHtYoQeFC4= | ||||
| go.arsenm.dev/infinitime v0.0.0-20210823171603-8648afeebf08/go.mod h1:gaepaueUz4J5FfxuV19B4w5pi+V3mD0LTef50ryxr/Q= | ||||
| go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= | ||||
| go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= | ||||
| go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= | ||||
| @@ -451,6 +453,8 @@ golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBc | ||||
| golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||
| golang.org/x/sys v0.0.0-20210820121016-41cdb8703e55 h1:rw6UNGRMfarCepjI8qOepea/SXwIBVfTKjztZ5gBbq4= | ||||
| golang.org/x/sys v0.0.0-20210820121016-41cdb8703e55/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||
| golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf h1:2ucpDCmfkl8Bd/FsLtiD653Wf96cW37s+iGx93zsu4k= | ||||
| golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||
| golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | ||||
| golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||
| golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||
|   | ||||
							
								
								
									
										21
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								main.go
									
									
									
									
									
								
							| @@ -19,11 +19,8 @@ | ||||
| package main | ||||
|  | ||||
| import ( | ||||
| 	"os" | ||||
| 	"strings" | ||||
| 	"time" | ||||
|  | ||||
| 	"github.com/rs/zerolog" | ||||
| 	"github.com/rs/zerolog/log" | ||||
| 	"github.com/spf13/viper" | ||||
| 	"go.arsenm.dev/infinitime" | ||||
| @@ -31,24 +28,6 @@ import ( | ||||
|  | ||||
| var firmwareUpdating = false | ||||
|  | ||||
| func init() { | ||||
| 	// Set up logger | ||||
| 	log.Logger = log.Output(zerolog.ConsoleWriter{Out: os.Stderr}) | ||||
|  | ||||
| 	// Set config settings | ||||
| 	viper.AddConfigPath("$HOME/.config") | ||||
| 	viper.AddConfigPath("/etc") | ||||
| 	viper.SetConfigName("itd") | ||||
| 	viper.SetConfigType("toml") | ||||
| 	viper.WatchConfig() | ||||
| 	viper.SetEnvKeyReplacer(strings.NewReplacer(".", "_")) | ||||
| 	viper.SetEnvPrefix("itd") | ||||
| 	if err := viper.ReadInConfig(); err != nil { | ||||
| 		log.Warn().Err(err).Msg("Could not read in config") | ||||
| 	} | ||||
| 	viper.AutomaticEnv() | ||||
| } | ||||
|  | ||||
| func main() { | ||||
| 	if viper.GetInt("cfg.version") != 2 { | ||||
| 		log.Fatal().Msg("Please update your config to the newest format, only v2 configs supported.") | ||||
|   | ||||
		Reference in New Issue
	
	Block a user