mirror of
https://github.com/Jguer/yay
synced 2024-10-04 15:19:08 +00:00
fix #147 with a sudo loop
This commit is contained in:
parent
f26ca4f100
commit
78742a9429
15
clean.go
15
clean.go
|
@ -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
28
cmd.go
|
@ -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...)
|
||||
|
|
Loading…
Reference in a new issue