aboutsummaryrefslogtreecommitdiff
path: root/cmd/termsonic/main.go
blob: 57687d912ca95bd6556c60c890a56d11c2c8b3db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package main

import (
	"flag"
	"fmt"
	"os"

	"git.sixfoisneuf.fr/termsonic/src"
)

var (
	configFile = flag.String("config", "", "Path to the configuration file")
)

func main() {
	flag.Parse()

	var cfg *src.Config
	var err error
	if *configFile == "" {
		cfg, err = src.LoadDefaultConfig()
		if err != nil {
			fmt.Printf("Could not start termsonic: %v", err)
			os.Exit(1)
		}
	} else {
		f, err := os.Open(*configFile)
		if err != nil {
			fmt.Printf("Could not read configuration file: %v", err)
			os.Exit(1)
		}
		f.Close()

		cfg, err = src.LoadConfigFromFile(*configFile)
		if err != nil {
			fmt.Printf("Error loading configuration file: %v", err)
			os.Exit(1)
		}
	}

	src.Run(cfg)
}