This commit is contained in:
morganamilo 2018-02-21 08:41:25 +00:00
parent 31d6a95c2a
commit 4ef282c54e
No known key found for this signature in database
GPG Key ID: 6FE9E7996B0B082E
6 changed files with 44 additions and 52 deletions

View File

@ -1,9 +1,9 @@
package main
import (
"strings"
alpm "github.com/jguer/go-alpm"
rpc "github.com/mikkeloscar/aur"
"strings"
)
type depTree struct {

View File

@ -61,7 +61,7 @@ func downloadAndUnpack(url string, path string, trim bool) (err error) {
return
}
func getPkgbuilds(pkgs []string) (error) {
func getPkgbuilds(pkgs []string) error {
//possibleAurs := make([]string, 0, 0)
wd, err := os.Getwd()
if err != nil {
@ -85,7 +85,7 @@ func getPkgbuildsfromABS(pkgs []string, path string) (missing []string, err erro
return
}
nextPkg:
nextPkg:
for _, pkgN := range pkgs {
for _, db := range dbList.Slice() {
pkg, err := db.PkgByName(pkgN)
@ -103,7 +103,7 @@ func getPkgbuildsfromABS(pkgs []string, path string) (missing []string, err erro
if errD != nil {
fmt.Println(boldYellowFg(pkg.Name()), boldGreenFg(errD.Error()))
}
fmt.Println(boldGreenFg(arrow), boldGreenFg("Downloaded"), boldYellowFg(pkg.Name()), boldGreenFg("from ABS"))
continue nextPkg
}

View File

@ -5,8 +5,8 @@ import (
"io/ioutil"
"os"
"os/exec"
"strings"
"strconv"
"strings"
alpm "github.com/jguer/go-alpm"
rpc "github.com/mikkeloscar/aur"
@ -17,7 +17,7 @@ import (
func install(parser *arguments) error {
aur, repo, err := packageSlices(parser.targets.toSlice())
if err != nil {
return err
return err
}
srcinfos := make(map[string]*gopkg.PKGBUILD)
@ -29,7 +29,7 @@ func install(parser *arguments) error {
//remotenames: names of all non repo packages on the system
_, _, _, remoteNames, err := filterPackages()
if err != nil {
return err
return err
}
//cache as a stringset. maybe make it return a string set in the first
@ -44,10 +44,10 @@ func install(parser *arguments) error {
requestTargets = append(requestTargets, remoteNames...)
}
if len(aur) > 0 || parser.existsArg("u", "sysupgrade") && len(remoteNames) > 0 {
if len(aur) > 0 || parser.existsArg("u", "sysupgrade") && len(remoteNames) > 0 {
fmt.Println(boldCyanFg("::"), boldFg("Querying AUR..."))
}
dt , err := getDepTree(requestTargets)
dt, err := getDepTree(requestTargets)
if err != nil {
return err
}
@ -66,9 +66,9 @@ func install(parser *arguments) error {
arguments.delArg("y", "refresh")
arguments.op = "S"
arguments.targets = make(stringSet)
if parser.existsArg("u", "sysupgrade") {
repoUp, aurUp, err := upgradePkgs(dt)
repoUp, aurUp, err := upgradePkgs(dt)
if err != nil {
return err
}
@ -76,12 +76,11 @@ func install(parser *arguments) error {
for pkg := range aurUp {
parser.addTarget(pkg)
}
for pkg := range repoUp {
arguments.addTarget(pkg)
}
//discard stuff thats
//not a target and
//not an upgrade and
@ -112,7 +111,6 @@ func install(parser *arguments) error {
return nil
}
if hasAur {
printDepCatagories(dc)
fmt.Println()
@ -143,12 +141,11 @@ func install(parser *arguments) error {
uask := alpm.Question(ask) | alpm.QuestionConflictPkg
cmdArgs.globals["ask"] = fmt.Sprint(uask)
askCleanBuilds(dc.Aur, dc.Bases)
// if !continueTask("Proceed with download?", "nN") {
// return fmt.Errorf("Aborting due to user")
// }
// }
err = dowloadPkgBuilds(dc.Aur, dc.Bases)
if err != nil {
@ -179,7 +176,7 @@ func install(parser *arguments) error {
return err
}
}*/
// if !continueTask("Proceed with install?", "nN") {
// return fmt.Errorf("Aborting due to user")
// }
@ -188,14 +185,13 @@ func install(parser *arguments) error {
//a version bumb for vsc packages
//that should not edit the sources so we should be safe to skip
//it and parse the srcinfo at the current version
if arguments.existsArg("gendb") {
if arguments.existsArg("gendb") {
err = parsesrcinfosFile(dc.Aur, srcinfos, dc.Bases)
if err != nil {
return err
}
fmt.Println(boldGreenFg(arrow+" GenDB finished. No packages were installed"))
fmt.Println(boldGreenFg(arrow + " GenDB finished. No packages were installed"))
return nil
}
@ -204,7 +200,6 @@ func install(parser *arguments) error {
return err
}
err = parsesrcinfosGenerate(dc.Aur, srcinfos, dc.Bases)
if err != nil {
return err
@ -354,7 +349,6 @@ func parsesrcinfosFile(pkgs []*rpc.Pkg, srcinfos map[string]*gopkg.PKGBUILD, bas
str := boldCyanFg("::") + boldFg(" Parsing SRCINFO (%d/%d): %s\n")
fmt.Printf(str, k+1, len(pkgs), formatPkgbase(pkg, bases))
pkgbuild, err := gopkg.ParseSRCINFO(dir + ".SRCINFO")
if err != nil {
return fmt.Errorf("%s: %s", pkg.Name, err)
@ -373,7 +367,7 @@ func parsesrcinfosGenerate(pkgs []*rpc.Pkg, srcinfos map[string]*gopkg.PKGBUILD,
str := boldCyanFg("::") + boldFg(" Parsing SRCINFO (%d/%d): %s\n")
fmt.Printf(str, k+1, len(pkgs), formatPkgbase(pkg, bases))
cmd := exec.Command(config.MakepkgBin, "--printsrcinfo")
cmd.Stderr = os.Stderr
cmd.Dir = dir
@ -400,7 +394,7 @@ func dowloadPkgBuilds(pkgs []*rpc.Pkg, bases map[string][]*rpc.Pkg) (err error)
//todo make pretty
str := boldCyanFg("::") + boldFg(" Downloading (%d/%d): %s\n")
fmt.Printf(str, k+1, len(pkgs), formatPkgbase(pkg, bases))
fmt.Printf(str, k+1, len(pkgs), formatPkgbase(pkg, bases))
err = downloadAndUnpack(baseURL+pkg.URLPath, config.BuildDir, false)
if err != nil {

View File

@ -109,7 +109,6 @@ func formatPkgbase(pkg *rpc.Pkg, bases map[string][]*rpc.Pkg) string {
return str
}
// printDownloadsFromRepo prints repository packages to be downloaded
func printDepCatagories(dc *depCatagories) {
repo := ""
@ -300,7 +299,7 @@ func printNumberOfUpdates() error {
return err
}
fmt.Println(len(aurUp) + len(repoUp))
return nil
}

View File

@ -394,7 +394,7 @@ func aurInfo(names []string) ([]rpc.Pkg, error) {
}
for n := 0; n < len(names); n += config.RequestSplitN {
max := min(len(names), n + config.RequestSplitN)
max := min(len(names), n+config.RequestSplitN)
wg.Add(1)
go makeRequest(n, max)
}
@ -429,7 +429,7 @@ func aurInfo(names []string) ([]rpc.Pkg, error) {
if len(missing) > 0 {
fmt.Print(boldRedFgBlackBg(arrow + " Missing AUR Packages:"))
for _, name := range missing {
fmt.Print(" " + boldYellowFgBlackBg(name))
fmt.Print(" " + boldYellowFgBlackBg(name))
}
fmt.Println()
}
@ -437,7 +437,7 @@ func aurInfo(names []string) ([]rpc.Pkg, error) {
if len(orphans) > 0 {
fmt.Print(boldRedFgBlackBg(arrow + " Orphaned AUR Packages:"))
for _, name := range orphans {
fmt.Print(" " + boldYellowFgBlackBg(name))
fmt.Print(" " + boldYellowFgBlackBg(name))
}
fmt.Println()
}
@ -445,7 +445,7 @@ func aurInfo(names []string) ([]rpc.Pkg, error) {
if len(outOfDate) > 0 {
fmt.Print(boldRedFgBlackBg(arrow + " Out Of Date AUR Packages:"))
for _, name := range outOfDate {
fmt.Print(" " + boldYellowFgBlackBg(name))
fmt.Print(" " + boldYellowFgBlackBg(name))
}
fmt.Println()
}

View File

@ -57,27 +57,27 @@ func (u upSlice) Less(i, j int) bool {
}
func getVersionDiff(oldVersion, newversion string) (left, right string) {
old, errOld := pkgb.NewCompleteVersion(oldVersion)
new, errNew := pkgb.NewCompleteVersion(newversion)
if errOld != nil {
left = redFg("Invalid Version")
}
if errNew != nil {
right = redFg("Invalid Version")
}
old, errOld := pkgb.NewCompleteVersion(oldVersion)
new, errNew := pkgb.NewCompleteVersion(newversion)
if errOld == nil && errNew == nil {
if old.Version == new.Version {
left = string(old.Version) + "-" + redFg(string(old.Pkgrel))
right = string(new.Version) + "-" + greenFg(string(new.Pkgrel))
} else {
left = redFg(string(old.Version)) + "-" + string(old.Pkgrel)
right = boldGreenFg(string(new.Version)) + "-" + string(new.Pkgrel)
}
}
if errOld != nil {
left = redFg("Invalid Version")
}
if errNew != nil {
right = redFg("Invalid Version")
}
return
if errOld == nil && errNew == nil {
if old.Version == new.Version {
left = string(old.Version) + "-" + redFg(string(old.Pkgrel))
right = string(new.Version) + "-" + greenFg(string(new.Pkgrel))
} else {
left = redFg(string(old.Version)) + "-" + string(old.Pkgrel)
right = boldGreenFg(string(new.Version)) + "-" + string(new.Pkgrel)
}
}
return
}
// Print prints the details of the packages to upgrade.
@ -169,7 +169,7 @@ func upDevel(remote []alpm.Package, packageC chan upgrade, done chan bool) {
fmt.Print(yellowFg("Warning: "))
fmt.Printf("%s ignoring package upgrade (%s => %s)\n", pkg.Name(), pkg.Version(), "git")
} else {
packageC <- upgrade{e.Package, "devel", pkg.Version() , "commit-" + e.SHA[0:6]}
packageC <- upgrade{e.Package, "devel", pkg.Version(), "commit-" + e.SHA[0:6]}
}
} else {
removeVCSPackage([]string{e.Package})
@ -216,7 +216,7 @@ func upAUR(remote []alpm.Package, remoteNames []string, dt *depTree) (toUpgrade
done <- true
}(remote, remoteNames, dt)
if routineDone == routines {
err = nil
return
@ -370,7 +370,6 @@ func upgradePkgs(dt *depTree) (stringSet, stringSet, error) {
repoNums = removeIntListFromList(excludeRepo, repoNums)
}
if len(repoUp) != 0 {
repoloop:
for i, k := range repoUp {