Tidied up code
The fetch script environment is now mostly set up in each own function
This commit is contained in:
parent
4de0d34e28
commit
a5ffb4b32e
69
main.go
69
main.go
@ -102,9 +102,9 @@ func readConfig() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
setColorMap()
|
setColorMap()
|
||||||
ascii := ""
|
ascii := getDistroAsciiArt()
|
||||||
if strings.HasPrefix(getDistroAsciiArt(), "#/") {
|
if strings.HasPrefix(ascii, "#/") {
|
||||||
firstLine := strings.Split(getDistroAsciiArt(), "\n")[0]
|
firstLine := strings.Split(ascii, "\n")[0]
|
||||||
if !config.ForceConfigAnsii {
|
if !config.ForceConfigAnsii {
|
||||||
ansiiColors := strings.Split(strings.TrimPrefix(firstLine, "#/"), ";")
|
ansiiColors := strings.Split(strings.TrimPrefix(firstLine, "#/"), ";")
|
||||||
for i, color := range ansiiColors {
|
for i, color := range ansiiColors {
|
||||||
@ -120,12 +120,12 @@ func readConfig() {
|
|||||||
}
|
}
|
||||||
setColorMap()
|
setColorMap()
|
||||||
}
|
}
|
||||||
ascii = os.Expand(getDistroAsciiArt(), func(s string) string {
|
ascii = os.Expand(ascii, func(s string) string {
|
||||||
return colorMap[s]
|
return colorMap[s]
|
||||||
})
|
})
|
||||||
ascii = strings.TrimPrefix(ascii, firstLine+"\n")
|
ascii = strings.TrimPrefix(ascii, firstLine+"\n")
|
||||||
} else {
|
} else {
|
||||||
ascii = os.Expand(getDistroAsciiArt(), func(s string) string {
|
ascii = os.Expand(ascii, func(s string) string {
|
||||||
return colorMap[s]
|
return colorMap[s]
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -135,33 +135,11 @@ func readConfig() {
|
|||||||
cmd := exec.Command("/bin/bash", fetchScriptPath)
|
cmd := exec.Command("/bin/bash", fetchScriptPath)
|
||||||
cmd.Dir = path.Dir(fetchScriptPath)
|
cmd.Dir = path.Dir(fetchScriptPath)
|
||||||
cmd.Env = os.Environ()
|
cmd.Env = os.Environ()
|
||||||
|
cmd.Env = append(cmd.Env, SetupFetchEnv()...)
|
||||||
cmd.Env = append(cmd.Env, "C0=\033[0m")
|
cmd.Env = append(cmd.Env, "C0=\033[0m")
|
||||||
for key, value := range colorMap {
|
for key, value := range colorMap {
|
||||||
cmd.Env = append(cmd.Env, fmt.Sprintf("%s=%s", key, value))
|
cmd.Env = append(cmd.Env, fmt.Sprintf("%s=%s", key, value))
|
||||||
}
|
}
|
||||||
cmd.Env = append(cmd.Env, "DISTRO_LONG_NAME="+getDistroInfo().LongName)
|
|
||||||
cmd.Env = append(cmd.Env, "DISTRO_SHORT_NAME="+getDistroInfo().ShortName)
|
|
||||||
cmd.Env = append(cmd.Env, "CPU_MODEL="+getCPUName())
|
|
||||||
cmd.Env = append(cmd.Env, "CPU_THREADS="+strconv.Itoa(getCPUThreads()))
|
|
||||||
memory := GetMemoryInfo()
|
|
||||||
if memory != nil {
|
|
||||||
cmd.Env = append(cmd.Env, "MEM_TOTAL="+strconv.Itoa(memory.MemTotal))
|
|
||||||
cmd.Env = append(cmd.Env, "MEM_USED="+strconv.Itoa(memory.MemTotal-memory.MemAvailable))
|
|
||||||
cmd.Env = append(cmd.Env, "MEM_FREE="+strconv.Itoa(memory.MemAvailable))
|
|
||||||
}
|
|
||||||
cmd.Env = append(cmd.Env, "DE_WM="+GetDEWM())
|
|
||||||
cmd.Env = append(cmd.Env, "USER_SHELL="+GetShell())
|
|
||||||
cmd.Env = append(cmd.Env, "DISPLAY_PROTOCOL="+GetDisplayProtocol())
|
|
||||||
monitors := getMonitorResolution()
|
|
||||||
if len(monitors) != 0 {
|
|
||||||
cmd.Env = append(cmd.Env, "CONNECTED_MONITORS="+strconv.Itoa(len(monitors)))
|
|
||||||
for i, monitor := range monitors {
|
|
||||||
cmd.Env = append(cmd.Env, "MONITOR"+strconv.Itoa(i+1)+"="+monitor)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if getGPUName() != "" {
|
|
||||||
cmd.Env = append(cmd.Env, "GPU_MODEL="+getGPUName())
|
|
||||||
}
|
|
||||||
out, err := cmd.Output()
|
out, err := cmd.Output()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
@ -196,3 +174,38 @@ func readConfig() {
|
|||||||
}
|
}
|
||||||
fmt.Println(final)
|
fmt.Println(final)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func SetupFetchEnv() []string {
|
||||||
|
var env = make(map[string]string)
|
||||||
|
env["DISTRO_LONG_NAME"] = getDistroInfo().LongName
|
||||||
|
env["DISTRO_SHORT_NAME"] = getDistroInfo().ShortName
|
||||||
|
env["CPU_MODEL"] = getCPUName()
|
||||||
|
env["CPU_THREADS"] = strconv.Itoa(getCPUThreads())
|
||||||
|
memory := GetMemoryInfo()
|
||||||
|
if memory != nil {
|
||||||
|
env["MEM_TOTAL"] = strconv.Itoa(memory.MemTotal)
|
||||||
|
env["MEM_USED"] = strconv.Itoa(memory.MemTotal - memory.MemAvailable)
|
||||||
|
env["MEM_FREE"] = strconv.Itoa(memory.MemAvailable)
|
||||||
|
}
|
||||||
|
env["DE_WM"] = GetDEWM()
|
||||||
|
env["USER_SHELL"] = GetShell()
|
||||||
|
env["DISPLAY_PROTOCOL"] = GetDisplayProtocol()
|
||||||
|
monitors := getMonitorResolution()
|
||||||
|
if len(monitors) != 0 {
|
||||||
|
env["CONNECTED_MONITORS"] = strconv.Itoa(len(monitors))
|
||||||
|
for i, monitor := range monitors {
|
||||||
|
env["MONITOR"+strconv.Itoa(i+1)] = monitor
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if getGPUName() != "" {
|
||||||
|
env["GPU_MODEL"] = getGPUName()
|
||||||
|
}
|
||||||
|
|
||||||
|
var ret = make([]string, len(env))
|
||||||
|
i := 0
|
||||||
|
for key, value := range env {
|
||||||
|
ret[i] = fmt.Sprintf("%s=%s", key, value)
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user