aboutsummaryrefslogtreecommitdiff
path: root/internal/config/config.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/config/config.go')
-rw-r--r--internal/config/config.go94
1 files changed, 0 insertions, 94 deletions
diff --git a/internal/config/config.go b/internal/config/config.go
deleted file mode 100644
index 6c74c2e..0000000
--- a/internal/config/config.go
+++ /dev/null
@@ -1,94 +0,0 @@
-package config
-
-import (
- "fmt"
- "os"
- "os/user"
- "runtime"
- "runtime/debug"
- "strings"
-)
-
-type Map map[string]interface{}
-
-type GlobalOptions struct {
- Timeout int `yaml:"timeout"`
- DefaultEmail string `yaml:"default-email"`
- Target string `yaml:"target"`
- Parts []string `yaml:"parts"`
-}
-
-var DefaultGlobalOptions = GlobalOptions{
- Timeout: 30,
- DefaultEmail: username() + "@" + hostname(),
- Target: "",
- Parts: []string{"text", "html"},
-}
-
-type Config struct {
- GlobalOptions
- GlobalConfig Map
-}
-
-type Options struct {
- MinFreq int `yaml:"min-frequency"`
- InclImages *bool `yaml:"include-images"`
-}
-
-func (c *Config) Validate() error {
- if c.Target == "" {
- return fmt.Errorf("No target set!")
- }
-
- return nil
-}
-
-func (c *Config) WithPartText() bool {
- for _, part := range c.Parts {
- if part == "text" {
- return true
- }
- }
-
- return false
-}
-
-func (c *Config) WithPartHtml() bool {
- for _, part := range c.Parts {
- if part == "html" {
- return true
- }
- }
-
- return false
-}
-
-func Version() string {
- bi, ok := debug.ReadBuildInfo()
- if !ok {
- return "(unknown)"
- }
- return bi.Main.Version
-}
-
-func hostname() (hostname string) {
- hostname, err := os.Hostname()
- if err != nil {
- hostname = "localhost"
- }
- return
-}
-
-func username() string {
- u, err := user.Current()
- switch {
- case err != nil:
- return "user"
- case runtime.GOOS == "windows":
- // the domain is attached -- remove it again
- split := strings.Split(u.Username, "\\")
- return split[len(split)-1]
- default:
- return u.Username
- }
-}