config.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package sysgo
  2. import (
  3. "fmt"
  4. "github.com/go-ini/ini"
  5. "os"
  6. )
  7. type PowerLevel struct {
  8. Dim int
  9. Close int
  10. PowerOff int
  11. }
  12. var PowerLevels map[string]*PowerLevel
  13. var (
  14. //CurKeySet = "PC" // PC or GameShell
  15. CurKeySet = "GameShell"
  16. DontLeave = false
  17. BackLight = "/proc/driver/backlight"
  18. Battery = "/sys/class/power_supply/axp20x-battery/uevent"
  19. MPD_socket = "/tmp/mpd.socket"
  20. UPDATE_URL = "https://raw.githubusercontent.com/clockworkpi/CPI/master/launchergo_ver.json"
  21. VERSION = "0.22"
  22. SKIN = "skin/default/" // !!!need the last slash!!!
  23. //load from dot files
  24. CurPowerLevel = "performance"
  25. Lang = "English"
  26. WifiDev = "wlan0"
  27. )
  28. func init() {
  29. if PowerLevels == nil {
  30. PowerLevels = make(map[string]*PowerLevel)
  31. PowerLevels["supersaving"] = &PowerLevel{10, 30, 120}
  32. PowerLevels["powersaving"] = &PowerLevel{40, 120, 300}
  33. PowerLevels["server"] = &PowerLevel{40, 120, 0}
  34. PowerLevels["performance"] = &PowerLevel{40, 0, 0}
  35. }
  36. //sudo LauncherGoDev=1 ./launchergo # for develop code on PC
  37. dev_mode := os.Getenv("LauncherGoDev")
  38. if len(dev_mode) < 1 {
  39. return
  40. }
  41. if _, err := os.Stat("app-local.ini"); err == nil {
  42. load_opts := ini.LoadOptions{
  43. IgnoreInlineComment: true,
  44. }
  45. cfg, err := ini.LoadSources(load_opts, "app-local.ini")
  46. if err != nil {
  47. fmt.Printf("Fail to read file: %v\n", err)
  48. return
  49. }
  50. section := cfg.Section("GameShell")
  51. if section != nil {
  52. gs_opts := section.KeyStrings()
  53. for i, v := range gs_opts {
  54. fmt.Println(i, v, section.Key(v).String())
  55. switch v {
  56. case "WifiDev":
  57. WifiDev = section.Key(v).String()
  58. case "CurKeySet":
  59. CurKeySet = section.Key(v).String()
  60. }
  61. }
  62. }
  63. }
  64. }