mirror of
https://github.com/Jguer/yay.git
synced 2024-11-07 17:47:21 +01:00
47 lines
1.2 KiB
Go
47 lines
1.2 KiB
Go
|
package ialpm
|
||
|
|
||
|
import (
|
||
|
"github.com/Jguer/yay/v11/pkg/db"
|
||
|
"github.com/Jguer/yay/v11/pkg/text"
|
||
|
)
|
||
|
|
||
|
// GetPackageNamesBySource returns package names with and without correspondence in SyncDBS respectively.
|
||
|
func (ae *AlpmExecutor) getPackageNamesBySource() {
|
||
|
for _, localpkg := range ae.LocalPackages() {
|
||
|
pkgName := localpkg.Name()
|
||
|
if ae.SyncPackage(pkgName) != nil {
|
||
|
ae.installedSyncPkgNames = append(ae.installedSyncPkgNames, pkgName)
|
||
|
} else {
|
||
|
ae.installedRemotePkgs = append(ae.installedRemotePkgs, localpkg)
|
||
|
ae.installedRemotePkgNames = append(ae.installedRemotePkgNames, pkgName)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
text.Debugln("populating db executor package caches.",
|
||
|
"sync_len", len(ae.installedSyncPkgNames), "remote_len", len(ae.installedRemotePkgNames))
|
||
|
}
|
||
|
|
||
|
func (ae *AlpmExecutor) InstalledRemotePackages() []db.IPackage {
|
||
|
if ae.installedRemotePkgs == nil {
|
||
|
ae.getPackageNamesBySource()
|
||
|
}
|
||
|
|
||
|
return ae.installedRemotePkgs
|
||
|
}
|
||
|
|
||
|
func (ae *AlpmExecutor) InstalledRemotePackageNames() []string {
|
||
|
if ae.installedRemotePkgNames == nil {
|
||
|
ae.getPackageNamesBySource()
|
||
|
}
|
||
|
|
||
|
return ae.installedRemotePkgNames
|
||
|
}
|
||
|
|
||
|
func (ae *AlpmExecutor) InstalledSyncPackageNames() []string {
|
||
|
if ae.installedSyncPkgNames == nil {
|
||
|
ae.getPackageNamesBySource()
|
||
|
}
|
||
|
|
||
|
return ae.installedSyncPkgNames
|
||
|
}
|