mirror of
https://github.com/rwinkhart/cachyos-postinstall-helper.git
synced 2026-08-28 04:46:52 -04:00
45 lines
1.2 KiB
Go
45 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"strings"
|
|
|
|
"github.com/rwinkhart/go-boilerplate/back"
|
|
"github.com/rwinkhart/go-boilerplate/front"
|
|
)
|
|
|
|
const firm = "linux-firmware-"
|
|
|
|
func firmwareSelector() {
|
|
var nonOptional = []string{firm + "whence", firm + "cirrus", firm + "other"}
|
|
var optional []string
|
|
for {
|
|
fmt.Println(back.AnsiBold + "\nSelected firmware: " + strings.Join(optional, ", ") + back.AnsiReset + "\n")
|
|
choice := front.InputMenuGen("Firmware to install:", []string{"BACK", "INSTALL", "intel", "amdgpu", "nvidia", "mediatek", "realtek", "atheros", "qcom", "broadcom"})
|
|
switch choice {
|
|
case 1:
|
|
return
|
|
case 2:
|
|
allPackages := append(nonOptional, optional...)
|
|
managePackages("-Rcns", []string{"linux-firmware"})
|
|
managePackages("-S", allPackages)
|
|
case 3:
|
|
optional = append(optional, firm+"intel")
|
|
case 4:
|
|
optional = append(optional, firm+"amdgpu")
|
|
case 5:
|
|
optional = append(optional, firm+"nvidia")
|
|
case 6:
|
|
optional = append(optional, firm+"mediatek")
|
|
case 7:
|
|
optional = append(optional, firm+"realtek")
|
|
case 8:
|
|
optional = append(optional, firm+"atheros")
|
|
case 9:
|
|
optional = append(optional, firm+"qcom")
|
|
case 10:
|
|
optional = append(optional, firm+"broadcom")
|
|
}
|
|
}
|
|
}
|