diff options
| -rw-r--r-- | doUpgrade.go | 35 | ||||
| -rw-r--r-- | main.go | 3 |
2 files changed, 36 insertions, 2 deletions
diff --git a/doUpgrade.go b/doUpgrade.go new file mode 100644 index 0000000..8c271b2 --- /dev/null +++ b/doUpgrade.go @@ -0,0 +1,35 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +package main + +import ( + "fmt" + "os" + + "go.wit.com/lib/gui/shell" + "go.wit.com/lib/protobuf/zoopb" +) + +// exits if not root +func checkSuperuser() { + if os.Getuid() != 0 { + badExit(fmt.Errorf("you must be root")) + } +} + +func doUpgrade() error { + var cmd []string + + checkSuperuser() + + cmd = []string{"apt", "update"} + shell.RunVerbose(cmd) + + cmd = []string{"apt", "install", "wit-tools"} + shell.RunVerbose(cmd) + + me.machine, _ = zoopb.InitMachine() + doAptUpgrade() + return nil +} @@ -35,8 +35,7 @@ func main() { dumpDebug() if argv.Upgrade != nil { - me.machine, _ = zoopb.InitMachine() - doAptUpgrade() + doUpgrade() okExit("") } |
