LauncherGoDev/sysgo/config.go
2023-01-07 20:58:17 +00:00

82 lines
1.8 KiB
Go

package sysgo
import (
"fmt"
"github.com/go-ini/ini"
"os"
)
type PowerLevel struct {
Dim int
Close int
PowerOff int
}
var PowerLevels map[string]*PowerLevel
var (
//CurKeySet = "PC" // PC or GameShell
CurKeySet = "GameShell"
DontLeave = false
BackLight = "/proc/driver/backlight"
Battery = "/sys/class/power_supply/axp20x-battery/uevent"
MPD_socket = "/tmp/mpd.socket"
UPDATE_URL = "https://raw.githubusercontent.com/clockworkpi/CPI/master/launchergo_ver_2023.json"
VERSION = "0.23"
SKIN = "skin/default/" // !!!need the last slash!!!
//load from dot files
CurPowerLevel = "performance"
Lang = "English"
WifiDev = "wlan0"
Aria2Url = "ws://localhost:6800/jsonrpc"
SQLDB = "foo.db" //Sqlite3
)
func init() {
if PowerLevels == nil {
PowerLevels = make(map[string]*PowerLevel)
PowerLevels["supersaving"] = &PowerLevel{10, 30, 120}
PowerLevels["powersaving"] = &PowerLevel{40, 120, 300}
PowerLevels["server"] = &PowerLevel{40, 120, 0}
PowerLevels["performance"] = &PowerLevel{40, 0, 0}
}
//sudo LauncherGoDev=1 ./launchergo # for develop code on PC
dev_mode := os.Getenv("LauncherGoDev")
if len(dev_mode) < 1 {
return
}
if _, err := os.Stat("app-local.ini"); err == nil {
load_opts := ini.LoadOptions{
IgnoreInlineComment: true,
}
cfg, err := ini.LoadSources(load_opts, "app-local.ini")
if err != nil {
fmt.Printf("Fail to read file: %v\n", err)
return
}
section := cfg.Section("GameShell")
if section != nil {
gs_opts := section.KeyStrings()
for i, v := range gs_opts {
fmt.Println(i, v, section.Key(v).String())
switch v {
case "WifiDev":
WifiDev = section.Key(v).String()
case "CurKeySet":
CurKeySet = section.Key(v).String()
}
}
}
}
}