package main import ( "flag" "log" "os" "os/signal" "git.1750studios.com/ToddShepard/DB640/internal/bot" "git.1750studios.com/ToddShepard/DB640/internal/config" "git.1750studios.com/ToddShepard/DB640/internal/database" "git.1750studios.com/ToddShepard/DB640/internal/web" ) func main() { cfg := flag.String("c", "", "Config file") flag.Parse() if *cfg == "" { log.Fatalf("Config file must not be empty!") } config.LoadConfig(*cfg) database.Init() if config.C.Features.Bot { bot.Init() } else { log.Print("[BOTS] Feature disabled in config!") } if config.C.Features.Web { web.Init() } else { log.Print("[WEB] Feature disabled in config!") } c := make(chan os.Signal, 1) signal.Notify(c, os.Interrupt) <-c if config.C.Features.Bot { bot.DeInit() } database.Close() config.WriteConfig(*cfg) }