mirror of
https://github.com/Jguer/yay
synced 2024-09-14 13:51:12 +00:00
commit
8ebc41d4f6
2
cmd.go
2
cmd.go
|
@ -419,7 +419,7 @@ func syncList(parser *arguments) error {
|
||||||
} else {
|
} else {
|
||||||
fmt.Printf("%s %s %s", magenta("aur"), bold(name), bold(green("unknown-version")))
|
fmt.Printf("%s %s %s", magenta("aur"), bold(name), bold(green("unknown-version")))
|
||||||
|
|
||||||
if _, err := localDB.Pkg(name); err == nil {
|
if localDB.Pkg(name) != nil {
|
||||||
fmt.Print(bold(blue(" [Installed]")))
|
fmt.Print(bold(blue(" [Installed]")))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -134,8 +134,8 @@ func (dp *depPool) ResolveTargets(pkgs []string) error {
|
||||||
//the user specified a db but there's no easy way to do
|
//the user specified a db but there's no easy way to do
|
||||||
//it without making alpm_lists so don't bother for now
|
//it without making alpm_lists so don't bother for now
|
||||||
//db/group is probably a rare use case
|
//db/group is probably a rare use case
|
||||||
group, err := dp.SyncDB.FindGroupPkgs(target.Name)
|
group := dp.SyncDB.FindGroupPkgs(target.Name)
|
||||||
if err == nil {
|
if !group.Empty() {
|
||||||
dp.Groups = append(dp.Groups, target.String())
|
dp.Groups = append(dp.Groups, target.String())
|
||||||
group.ForEach(func(pkg alpm.Package) error {
|
group.ForEach(func(pkg alpm.Package) error {
|
||||||
dp.Explicit.set(pkg.Name())
|
dp.Explicit.set(pkg.Name())
|
||||||
|
@ -207,7 +207,7 @@ func (dp *depPool) findProvides(pkgs stringSet) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
for pkg := range pkgs {
|
for pkg := range pkgs {
|
||||||
if _, err := dp.LocalDB.Pkg(pkg); err == nil {
|
if dp.LocalDB.Pkg(pkg) != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
|
@ -389,7 +389,7 @@ func (dp *depPool) findSatisfierAurCache(dep string) *rpc.Pkg {
|
||||||
seen := make(stringSet)
|
seen := make(stringSet)
|
||||||
providers := makeProviders(depName)
|
providers := makeProviders(depName)
|
||||||
|
|
||||||
if _, err := dp.LocalDB.Pkg(depName); err == nil {
|
if dp.LocalDB.Pkg(depName) != nil {
|
||||||
if pkg, ok := dp.AurCache[dep]; ok && pkgSatisfies(pkg.Name, pkg.Version, dep) {
|
if pkg, ok := dp.AurCache[dep]; ok && pkgSatisfies(pkg.Name, pkg.Version, dep) {
|
||||||
return pkg
|
return pkg
|
||||||
}
|
}
|
||||||
|
|
|
@ -216,11 +216,11 @@ func getPkgbuildsfromABS(pkgs []string, path string) (bool, error) {
|
||||||
|
|
||||||
if pkgDB != "" {
|
if pkgDB != "" {
|
||||||
if db, err := alpmHandle.SyncDBByName(pkgDB); err == nil {
|
if db, err := alpmHandle.SyncDBByName(pkgDB); err == nil {
|
||||||
pkg, err = db.Pkg(name)
|
pkg = db.Pkg(name)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
dbList.ForEach(func(db alpm.DB) error {
|
dbList.ForEach(func(db alpm.DB) error {
|
||||||
if pkg, err = db.Pkg(name); err == nil {
|
if pkg = db.Pkg(name); pkg != nil {
|
||||||
return fmt.Errorf("")
|
return fmt.Errorf("")
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
|
2
go.mod
2
go.mod
|
@ -3,6 +3,6 @@ module github.com/Jguer/yay/v9
|
||||||
require (
|
require (
|
||||||
github.com/Morganamilo/go-pacmanconf v0.0.0-20180910220353-9c5265e1b14f
|
github.com/Morganamilo/go-pacmanconf v0.0.0-20180910220353-9c5265e1b14f
|
||||||
github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
||||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0
|
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b
|
||||||
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
||||||
)
|
)
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -6,6 +6,8 @@ github.com/jguer/go-alpm v0.0.0-20180914002751-643c287316a5 h1:JPIXUHXLZYwYUTlGp
|
||||||
github.com/jguer/go-alpm v0.0.0-20180914002751-643c287316a5/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
github.com/jguer/go-alpm v0.0.0-20180914002751-643c287316a5/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0 h1:MtH4SM1pw+23QhMERYK38DyGNqf6F3zUhxeKmQhuHC0=
|
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0 h1:MtH4SM1pw+23QhMERYK38DyGNqf6F3zUhxeKmQhuHC0=
|
||||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||||
|
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b h1:lQICb6Gw0HDAZlAGdveIp/zww2TVBwQvOM5VtAMpulc=
|
||||||
|
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||||
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4 h1:qgHSZbD0g3W7KAkZFzXlSqgriYnzEUFS1gkgEiv2GrE=
|
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4 h1:qgHSZbD0g3W7KAkZFzXlSqgriYnzEUFS1gkgEiv2GrE=
|
||||||
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4/go.mod h1:n1NKHoldRNhIEufSx1PiDYcd2W+wpbz5/5K+p2eNDVk=
|
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4/go.mod h1:n1NKHoldRNhIEufSx1PiDYcd2W+wpbz5/5K+p2eNDVk=
|
||||||
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9 h1:g4TBYa1sjv/TZfU9t82oYlRneu8cCVr3dnazE7os5vw=
|
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9 h1:g4TBYa1sjv/TZfU9t82oYlRneu8cCVr3dnazE7os5vw=
|
||||||
|
|
|
@ -364,12 +364,7 @@ func inRepos(syncDB alpm.DBList, pkg string) bool {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = syncDB.FindGroupPkgs(target.Name)
|
return !syncDB.FindGroupPkgs(target.Name).Empty()
|
||||||
if err == nil {
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func earlyPacmanCall(parser *arguments) error {
|
func earlyPacmanCall(parser *arguments) error {
|
||||||
|
@ -950,7 +945,7 @@ func buildInstallPkgbuilds(dp *depPool, do *depOrder, srcinfos map[string]*gosrc
|
||||||
if cmdArgs.existsArg("needed") {
|
if cmdArgs.existsArg("needed") {
|
||||||
installed := true
|
installed := true
|
||||||
for _, split := range base {
|
for _, split := range base {
|
||||||
if alpmpkg, err := dp.LocalDB.Pkg(split.Name); err != nil || alpmpkg.Version() != version {
|
if alpmpkg := dp.LocalDB.Pkg(split.Name); alpmpkg == nil || alpmpkg.Version() != version {
|
||||||
installed = false
|
installed = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
4
print.go
4
print.go
|
@ -88,7 +88,7 @@ func (q aurQuery) printSearch(start int) {
|
||||||
toprint += bold(red("(Out-of-date "+formatTime(res.OutOfDate)+")")) + " "
|
toprint += bold(red("(Out-of-date "+formatTime(res.OutOfDate)+")")) + " "
|
||||||
}
|
}
|
||||||
|
|
||||||
if pkg, err := localDB.Pkg(res.Name); err == nil {
|
if pkg := localDB.Pkg(res.Name); pkg != nil {
|
||||||
if pkg.Version() != res.Version {
|
if pkg.Version() != res.Version {
|
||||||
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
||||||
} else {
|
} else {
|
||||||
|
@ -126,7 +126,7 @@ func (s repoQuery) printSearch() {
|
||||||
|
|
||||||
localDB, err := alpmHandle.LocalDB()
|
localDB, err := alpmHandle.LocalDB()
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if pkg, err := localDB.Pkg(res.Name()); err == nil {
|
if pkg := localDB.Pkg(res.Name()); pkg != nil {
|
||||||
if pkg.Version() != res.Version() {
|
if pkg.Version() != res.Version() {
|
||||||
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
||||||
} else {
|
} else {
|
||||||
|
|
11
query.go
11
query.go
|
@ -80,8 +80,8 @@ func filterPackages() (local []alpm.Package, remote []alpm.Package,
|
||||||
if found {
|
if found {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
_, err := d.Pkg(k.Name())
|
|
||||||
if err == nil {
|
if d.Pkg(k.Name()) != nil {
|
||||||
found = true
|
found = true
|
||||||
local = append(local, k)
|
local = append(local, k)
|
||||||
localNames = append(localNames, k.Name())
|
localNames = append(localNames, k.Name())
|
||||||
|
@ -301,9 +301,7 @@ func packageSlices(toCheck []string) (aur []string, repo []string, err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
_ = dbList.ForEach(func(db alpm.DB) error {
|
_ = dbList.ForEach(func(db alpm.DB) error {
|
||||||
_, err := db.Pkg(name)
|
if db.Pkg(name) != nil {
|
||||||
|
|
||||||
if err == nil {
|
|
||||||
found = true
|
found = true
|
||||||
return fmt.Errorf("")
|
return fmt.Errorf("")
|
||||||
|
|
||||||
|
@ -312,8 +310,7 @@ func packageSlices(toCheck []string) (aur []string, repo []string, err error) {
|
||||||
})
|
})
|
||||||
|
|
||||||
if !found {
|
if !found {
|
||||||
_, errdb := dbList.FindGroupPkgs(name)
|
found = !dbList.FindGroupPkgs(name).Empty()
|
||||||
found = errdb == nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if found {
|
if found {
|
||||||
|
|
|
@ -304,10 +304,9 @@ func upRepo(local []alpm.Package) (upSlice, error) {
|
||||||
|
|
||||||
alpmHandle.SyncSysupgrade(cmdArgs.existsDouble("u", "sysupgrade"))
|
alpmHandle.SyncSysupgrade(cmdArgs.existsDouble("u", "sysupgrade"))
|
||||||
alpmHandle.TransGetAdd().ForEach(func(pkg alpm.Package) error {
|
alpmHandle.TransGetAdd().ForEach(func(pkg alpm.Package) error {
|
||||||
localPkg, err := localDB.Pkg(pkg.Name())
|
|
||||||
localVer := "-"
|
localVer := "-"
|
||||||
|
|
||||||
if err == nil {
|
if localPkg := localDB.Pkg(pkg.Name()); localPkg != nil {
|
||||||
localVer = localPkg.Version()
|
localVer = localPkg.Version()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
16
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
16
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
|
@ -130,28 +130,20 @@ func (db *DB) SetUsage(usage Usage) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Name searches a package in db.
|
// Name searches a package in db.
|
||||||
func (db *DB) Pkg(name string) (*Package, error) {
|
func (db *DB) Pkg(name string) *Package {
|
||||||
cName := C.CString(name)
|
cName := C.CString(name)
|
||||||
defer C.free(unsafe.Pointer(cName))
|
defer C.free(unsafe.Pointer(cName))
|
||||||
ptr := C.alpm_db_get_pkg(db.ptr, cName)
|
ptr := C.alpm_db_get_pkg(db.ptr, cName)
|
||||||
if ptr == nil {
|
return &Package{ptr, db.handle}
|
||||||
return nil, db.handle.LastError()
|
|
||||||
}
|
|
||||||
return &Package{ptr, db.handle}, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// PkgCachebyGroup returns a PackageList of packages belonging to a group
|
// PkgCachebyGroup returns a PackageList of packages belonging to a group
|
||||||
func (l DBList) FindGroupPkgs(name string) (PackageList, error) {
|
func (l DBList) FindGroupPkgs(name string) PackageList {
|
||||||
cName := C.CString(name)
|
cName := C.CString(name)
|
||||||
defer C.free(unsafe.Pointer(cName))
|
defer C.free(unsafe.Pointer(cName))
|
||||||
pkglist := (*C.struct___alpm_list_t)(unsafe.Pointer(l.list))
|
pkglist := (*C.struct___alpm_list_t)(unsafe.Pointer(l.list))
|
||||||
|
|
||||||
pkgcache := (*list)(unsafe.Pointer(C.alpm_find_group_pkgs(pkglist, cName)))
|
pkgcache := (*list)(unsafe.Pointer(C.alpm_find_group_pkgs(pkglist, cName)))
|
||||||
if pkgcache == nil {
|
return PackageList{pkgcache, l.handle}
|
||||||
return PackageList{pkgcache, l.handle}, l.handle.LastError()
|
|
||||||
}
|
|
||||||
|
|
||||||
return PackageList{pkgcache, l.handle}, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// PkgCache returns the list of packages of the database
|
// PkgCache returns the list of packages of the database
|
||||||
|
|
12
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
12
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
|
@ -106,6 +106,18 @@ func (l *list) forEach(f func(unsafe.Pointer) error) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (l *list) Len() int {
|
||||||
|
count := 0
|
||||||
|
for ; l != nil; l = l.Next {
|
||||||
|
count++
|
||||||
|
}
|
||||||
|
return count
|
||||||
|
}
|
||||||
|
|
||||||
|
func (l *list) Empty() bool {
|
||||||
|
return l == nil
|
||||||
|
}
|
||||||
|
|
||||||
type StringList struct {
|
type StringList struct {
|
||||||
*list
|
*list
|
||||||
}
|
}
|
||||||
|
|
2
vendor/modules.txt
vendored
2
vendor/modules.txt
vendored
|
@ -3,7 +3,7 @@ github.com/Morganamilo/go-pacmanconf
|
||||||
github.com/Morganamilo/go-pacmanconf/ini
|
github.com/Morganamilo/go-pacmanconf/ini
|
||||||
# github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
# github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
||||||
github.com/Morganamilo/go-srcinfo
|
github.com/Morganamilo/go-srcinfo
|
||||||
# github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0
|
# github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b
|
||||||
github.com/jguer/go-alpm
|
github.com/jguer/go-alpm
|
||||||
# github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
# github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
||||||
github.com/mikkeloscar/aur
|
github.com/mikkeloscar/aur
|
||||||
|
|
Loading…
Reference in a new issue