fix #147 with a sudo loop

This commit is contained in:
Jguer 2018-02-13 18:20:15 +00:00
parent f26ca4f100
commit 78742a9429
No known key found for this signature in database
GPG key ID: 09754DBECF21746F
2 changed files with 20 additions and 23 deletions

View file

@ -2,21 +2,6 @@ package main
// GetPkgbuild gets the pkgbuild of the package 'pkg' trying the ABS first and then the AUR trying the ABS first and then the AUR.
// RemoveMakeDeps receives a make dependency list and removes those
// that are no longer necessary.
func removeMakeDeps(depS []string) (err error) {
hanging := sliceHangingPackages(depS)
if len(hanging) != 0 {
if !continueTask("Confirm Removal?", "nN") {
return nil
}
err = cleanRemove(hanging)
}
return
}
// RemovePackage removes package from VCS information
func removeVCSPackage(pkgs []string) {
for _, pkgName := range pkgs {

28
cmd.go
View file

@ -10,6 +10,7 @@ import (
"path/filepath"
"strconv"
"strings"
"time"
)
var cmdArgs = makeArguments()
@ -265,6 +266,18 @@ cleanup:
os.Exit(status)
}
func sudoLoop() {
for {
cmd := exec.Command("sudo", "-v")
cmd.Stdin, cmd.Stdout, cmd.Stderr = os.Stdin, os.Stdout, os.Stderr
err := cmd.Run()
if err != nil {
fmt.Println(err)
}
time.Sleep(298 * time.Second)
}
}
func handleCmd() (err error) {
for option := range cmdArgs.options {
if handleConfig(option) {
@ -278,6 +291,10 @@ func handleCmd() (err error) {
}
}
if cmdArgs.needRoot() {
go sudoLoop()
}
switch cmdArgs.op {
case "V", "version":
handleVersion()
@ -370,14 +387,8 @@ func handlePrint() (err error) {
fmt.Printf("%#v", config)
case cmdArgs.existsArg("n", "numberupgrades"):
err = printNumberOfUpdates()
if err != nil {
return
}
case cmdArgs.existsArg("u", "upgrades"):
err = printUpdateList()
if err != nil {
return
}
case cmdArgs.existsArg("c", "complete"):
switch {
case cmdArgs.existsArg("f", "fish"):
@ -388,10 +399,10 @@ func handlePrint() (err error) {
case cmdArgs.existsArg("s", "stats"):
err = localStatistics()
default:
return nil
err = nil
}
return nil
return err
}
func handleYay() (err error) {
@ -645,6 +656,7 @@ func numberMenu(pkgS []string, flags []string) (err error) {
aurI = removeListFromList(aurNI, aurI)
repoI = removeListFromList(repoNI, repoI)
go sudoLoop()
arguments := makeArguments()
arguments.addTarget(repoI...)
arguments.addTarget(aurI...)