summaryrefslogtreecommitdiff
path: root/doUpgrade.go
diff options
context:
space:
mode:
Diffstat (limited to 'doUpgrade.go')
-rw-r--r--doUpgrade.go18
1 files changed, 14 insertions, 4 deletions
diff --git a/doUpgrade.go b/doUpgrade.go
index 3d8d0c1..428c11d 100644
--- a/doUpgrade.go
+++ b/doUpgrade.go
@@ -6,7 +6,6 @@ package main
import (
"fmt"
- "go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/zoopb"
"go.wit.com/log"
)
@@ -37,13 +36,24 @@ func doUpgrade() error {
if !me.machine.IsInstalled(p.Name) {
continue
}
+
if argv.DryRun {
log.Info("should install package", p.Name)
}
- cmd := []string{"apt", "install", p.Name}
- log.Info("Running:", cmd)
- shell.RunVerbose(cmd)
+ if argv.Force || argv.Upgrade.Force {
+ cmd := []string{"apt", "remove", p.Name}
+ log.Info("Running:", cmd)
+ exitOnError(cmd)
+
+ cmd = []string{"apt", "install", "-y", p.Name}
+ log.Info("Running:", cmd)
+ exitOnError(cmd)
+ } else {
+ cmd := []string{"apt", "install", "-y", p.Name}
+ log.Info("Running:", cmd)
+ exitOnError(cmd)
+ }
}
okExit("installed")
return nil