diff options
Diffstat (limited to 'install_linux.go')
| -rw-r--r-- | install_linux.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/install_linux.go b/install_linux.go new file mode 100644 index 0000000..0ed600b --- /dev/null +++ b/install_linux.go @@ -0,0 +1,36 @@ +package fhelp + +// auto run protoc with the correct args + +import ( + "bufio" + "fmt" + "os" + "strings" + + "go.wit.com/lib/gui/shell" + "go.wit.com/log" +) + +func osInstall(pkg string) error { + cmd := []string{"apt", "install", "-y", pkg} + if pkg == "protoc" { + cmd = []string{"apt", "install", "-y", "protobuf-compiler"} + } + log.Info("Would you like to run", "sudo", cmd, "now?") + fmt.Fprintf(os.Stdout, "(y)es or (n)o ? ") + + scanner := bufio.NewScanner(os.Stdin) + for scanner.Scan() { + line := scanner.Text() + line = strings.TrimSpace(line) + line = strings.ToLower(line) + switch line { + case "y": + shell.Sudo(cmd) + return nil + default: + } + } + return log.Errorf("user didn't install package %s", pkg) +} |
