mirror of
https://github.com/Jguer/yay
synced 2024-09-14 13:51:12 +00:00
Merge pull request #585 from Morganamilo/usage
Support Usage in pacman.conf
This commit is contained in:
commit
b848514b4b
4
Gopkg.lock
generated
4
Gopkg.lock
generated
|
@ -11,13 +11,13 @@
|
||||||
branch = "master"
|
branch = "master"
|
||||||
name = "github.com/jguer/go-alpm"
|
name = "github.com/jguer/go-alpm"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
revision = "1114f773cdfb05f577438f7a0538eccabc9cf012"
|
revision = "c3ee958efac942186012cc67de8fe5e7a5b3685d"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
name = "github.com/mikkeloscar/aur"
|
name = "github.com/mikkeloscar/aur"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
revision = "2980c04ca5c926b2cb7c4ac3ac8dc0b7f70d29ba"
|
revision = "f998dbf94dc47ef839c76740efeb673d3459be1f"
|
||||||
|
|
||||||
[solve-meta]
|
[solve-meta]
|
||||||
analyzer-name = "dep"
|
analyzer-name = "dep"
|
||||||
|
|
|
@ -85,3 +85,12 @@ func questionCallback(question alpm.QuestionAny) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func logCallback(level alpm.LogLevel, str string) {
|
||||||
|
switch level {
|
||||||
|
case alpm.LogWarning:
|
||||||
|
fmt.Print(bold(yellow(smallArrow)), " ", str)
|
||||||
|
case alpm.LogError:
|
||||||
|
fmt.Print(bold(red(smallArrow)), " ", str)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
3
cmd.go
3
cmd.go
|
@ -457,7 +457,8 @@ func numberMenu(pkgS []string) (err error) {
|
||||||
lenaq = len(aq)
|
lenaq = len(aq)
|
||||||
}
|
}
|
||||||
if mode == ModeRepo || mode == ModeAny {
|
if mode == ModeRepo || mode == ModeAny {
|
||||||
pq, lenpq, repoErr = queryRepo(pkgS)
|
pq, repoErr = queryRepo(pkgS)
|
||||||
|
lenpq = len(pq)
|
||||||
if repoErr != nil {
|
if repoErr != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
1
main.go
1
main.go
|
@ -186,6 +186,7 @@ func initAlpmHandle() (err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
alpmHandle.SetQuestionCallback(questionCallback)
|
alpmHandle.SetQuestionCallback(questionCallback)
|
||||||
|
alpmHandle.SetLogCallback(logCallback)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
53
query.go
53
query.go
|
@ -169,7 +169,7 @@ func syncSearch(pkgS []string) (err error) {
|
||||||
aq, aurErr = narrowSearch(pkgS, true)
|
aq, aurErr = narrowSearch(pkgS, true)
|
||||||
}
|
}
|
||||||
if mode == ModeRepo || mode == ModeAny {
|
if mode == ModeRepo || mode == ModeAny {
|
||||||
pq, _, repoErr = queryRepo(pkgS)
|
pq, repoErr = queryRepo(pkgS)
|
||||||
if repoErr != nil {
|
if repoErr != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -254,52 +254,29 @@ func syncInfo(pkgS []string) (err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Search handles repo searches. Creates a RepoSearch struct.
|
// Search handles repo searches. Creates a RepoSearch struct.
|
||||||
func queryRepo(pkgInputN []string) (s repoQuery, n int, err error) {
|
func queryRepo(pkgInputN []string) (s repoQuery, err error) {
|
||||||
dbList, err := alpmHandle.SyncDbs()
|
dbList, err := alpmHandle.SyncDbs()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// BottomUp functions
|
dbList.ForEach(func(db alpm.Db) error {
|
||||||
initL := func(len int) int {
|
if len(pkgInputN) == 0 {
|
||||||
if config.SortMode == TopDown {
|
pkgs := db.PkgCache()
|
||||||
return 0
|
s = append(s, pkgs.Slice()...)
|
||||||
|
} else {
|
||||||
|
pkgs := db.Search(pkgInputN)
|
||||||
|
s = append(s, pkgs.Slice()...)
|
||||||
}
|
}
|
||||||
return len - 1
|
return nil
|
||||||
}
|
})
|
||||||
compL := func(len int, i int) bool {
|
|
||||||
if config.SortMode == TopDown {
|
if config.SortMode == BottomUp {
|
||||||
return i < len
|
for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 {
|
||||||
|
s[i], s[j] = s[j], s[i]
|
||||||
}
|
}
|
||||||
return i > -1
|
|
||||||
}
|
|
||||||
finalL := func(i int) int {
|
|
||||||
if config.SortMode == TopDown {
|
|
||||||
return i + 1
|
|
||||||
}
|
|
||||||
return i - 1
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dbS := dbList.Slice()
|
|
||||||
lenDbs := len(dbS)
|
|
||||||
for f := initL(lenDbs); compL(lenDbs, f); f = finalL(f) {
|
|
||||||
pkgS := dbS[f].PkgCache().Slice()
|
|
||||||
lenPkgs := len(pkgS)
|
|
||||||
for i := initL(lenPkgs); compL(lenPkgs, i); i = finalL(i) {
|
|
||||||
match := true
|
|
||||||
for _, pkgN := range pkgInputN {
|
|
||||||
if !(strings.Contains(pkgS[i].Name(), pkgN) || strings.Contains(strings.ToLower(pkgS[i].Description()), pkgN)) {
|
|
||||||
match = false
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if match {
|
|
||||||
n++
|
|
||||||
s = append(s, pkgS[i])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
64
upgrade.go
64
upgrade.go
|
@ -267,10 +267,11 @@ func upAUR(remote []alpm.Package, aurdata map[string]*rpc.Pkg) (upSlice, error)
|
||||||
func printIgnoringPackage(pkg alpm.Package, newPkgVersion string) {
|
func printIgnoringPackage(pkg alpm.Package, newPkgVersion string) {
|
||||||
left, right := getVersionDiff(pkg.Version(), newPkgVersion)
|
left, right := getVersionDiff(pkg.Version(), newPkgVersion)
|
||||||
|
|
||||||
fmt.Println(
|
fmt.Printf("%s %s: ignoring package upgrade (%s => %s)\n",
|
||||||
yellow(bold(smallArrow)) + fmt.Sprintf(
|
yellow(bold(smallArrow)),
|
||||||
" Ignoring package upgrade: %s (%s -> %s)",
|
cyan(pkg.Name()),
|
||||||
cyan(pkg.Name()), left, right))
|
left, right,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
func printLocalNewerThanAUR(
|
func printLocalNewerThanAUR(
|
||||||
|
@ -283,12 +284,12 @@ func printLocalNewerThanAUR(
|
||||||
|
|
||||||
left, right := getVersionDiff(pkg.Version(), aurPkg.Version)
|
left, right := getVersionDiff(pkg.Version(), aurPkg.Version)
|
||||||
|
|
||||||
if !isDevelName(pkg.Name()) &&
|
if !isDevelName(pkg.Name()) && alpm.VerCmp(pkg.Version(), aurPkg.Version) > 0 {
|
||||||
alpm.VerCmp(pkg.Version(), aurPkg.Version) > 0 {
|
fmt.Printf("%s %s: local (%s) is newer than AUR (%s)\n",
|
||||||
fmt.Println(
|
yellow(bold(smallArrow)),
|
||||||
yellow(bold(smallArrow)) + fmt.Sprintf(
|
cyan(pkg.Name()),
|
||||||
" Local package is newer than AUR: %s (%s -> %s)",
|
left, right,
|
||||||
cyan(pkg.Name()), left, right))
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -296,23 +297,38 @@ func printLocalNewerThanAUR(
|
||||||
// upRepo gathers local packages and checks if they have new versions.
|
// upRepo gathers local packages and checks if they have new versions.
|
||||||
// Output: Upgrade type package list.
|
// Output: Upgrade type package list.
|
||||||
func upRepo(local []alpm.Package) (upSlice, error) {
|
func upRepo(local []alpm.Package) (upSlice, error) {
|
||||||
dbList, err := alpmHandle.SyncDbs()
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
slice := upSlice{}
|
slice := upSlice{}
|
||||||
|
|
||||||
for _, pkg := range local {
|
localDB, err := alpmHandle.LocalDb()
|
||||||
newPkg := pkg.NewVersion(dbList)
|
if err != nil {
|
||||||
if newPkg != nil {
|
return slice, err
|
||||||
if pkg.ShouldIgnore() {
|
|
||||||
printIgnoringPackage(pkg, newPkg.Version())
|
|
||||||
} else {
|
|
||||||
slice = append(slice, upgrade{pkg.Name(), newPkg.DB().Name(), pkg.Version(), newPkg.Version()})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = alpmHandle.TransInit(alpm.TransFlagNoLock)
|
||||||
|
if err != nil {
|
||||||
|
return slice, err
|
||||||
|
}
|
||||||
|
|
||||||
|
defer alpmHandle.TransRelease()
|
||||||
|
|
||||||
|
alpmHandle.SyncSysupgrade(cmdArgs.existsDouble("u", "sysupgrade"))
|
||||||
|
alpmHandle.TransGetAdd().ForEach(func(pkg alpm.Package) error {
|
||||||
|
localPkg, err := localDB.PkgByName(pkg.Name())
|
||||||
|
localVer := "-"
|
||||||
|
|
||||||
|
if err == nil {
|
||||||
|
localVer = localPkg.Version()
|
||||||
|
}
|
||||||
|
|
||||||
|
slice = append(slice, upgrade{
|
||||||
|
pkg.Name(),
|
||||||
|
pkg.DB().Name(),
|
||||||
|
localVer,
|
||||||
|
pkg.Version(),
|
||||||
|
})
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
return slice, nil
|
return slice, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
vendor/github.com/jguer/go-alpm/callbacks.c
generated
vendored
2
vendor/github.com/jguer/go-alpm/callbacks.c
generated
vendored
|
@ -9,7 +9,7 @@
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <alpm.h>
|
#include <alpm.h>
|
||||||
|
|
||||||
void logCallback(uint16_t level, char *cstring);
|
void logCallback(alpm_loglevel_t level, char *cstring);
|
||||||
void questionCallback(alpm_question_t *question);
|
void questionCallback(alpm_question_t *question);
|
||||||
|
|
||||||
void go_alpm_log_cb(alpm_loglevel_t level, const char *fmt, va_list arg) {
|
void go_alpm_log_cb(alpm_loglevel_t level, const char *fmt, va_list arg) {
|
||||||
|
|
10
vendor/github.com/jguer/go-alpm/callbacks.go
generated
vendored
10
vendor/github.com/jguer/go-alpm/callbacks.go
generated
vendored
|
@ -9,7 +9,7 @@ package alpm
|
||||||
/*
|
/*
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <alpm.h>
|
#include <alpm.h>
|
||||||
void logCallback(uint16_t level, char *cstring);
|
void logCallback(alpm_loglevel_t level, char *cstring);
|
||||||
void go_alpm_log_cb(alpm_loglevel_t level, const char *fmt, va_list arg);
|
void go_alpm_log_cb(alpm_loglevel_t level, const char *fmt, va_list arg);
|
||||||
void go_alpm_set_logging(alpm_handle_t *handle);
|
void go_alpm_set_logging(alpm_handle_t *handle);
|
||||||
void go_alpm_set_question(alpm_handle_t *handle);
|
void go_alpm_set_question(alpm_handle_t *handle);
|
||||||
|
@ -20,12 +20,12 @@ import (
|
||||||
"unsafe"
|
"unsafe"
|
||||||
)
|
)
|
||||||
|
|
||||||
type logCallbackSig func(uint16, string)
|
type logCallbackSig func(LogLevel, string)
|
||||||
type questionCallbackSig func(QuestionAny)
|
type questionCallbackSig func(QuestionAny)
|
||||||
|
|
||||||
var DefaultLogLevel = LogWarning
|
var DefaultLogLevel = LogWarning
|
||||||
|
|
||||||
func DefaultLogCallback(lvl uint16, s string) {
|
func DefaultLogCallback(lvl LogLevel, s string) {
|
||||||
if lvl <= DefaultLogLevel {
|
if lvl <= DefaultLogLevel {
|
||||||
print("go-alpm: ", s)
|
print("go-alpm: ", s)
|
||||||
}
|
}
|
||||||
|
@ -35,8 +35,8 @@ var log_callback logCallbackSig
|
||||||
var question_callback questionCallbackSig
|
var question_callback questionCallbackSig
|
||||||
|
|
||||||
//export logCallback
|
//export logCallback
|
||||||
func logCallback(level uint16, cstring *C.char) {
|
func logCallback(level C.alpm_loglevel_t, cstring *C.char) {
|
||||||
log_callback(level, C.GoString(cstring))
|
log_callback(LogLevel(level), C.GoString(cstring))
|
||||||
}
|
}
|
||||||
|
|
||||||
//export questionCallback
|
//export questionCallback
|
||||||
|
|
27
vendor/github.com/jguer/go-alpm/conf.go
generated
vendored
27
vendor/github.com/jguer/go-alpm/conf.go
generated
vendored
|
@ -69,6 +69,7 @@ type PacmanConfig struct {
|
||||||
type RepoConfig struct {
|
type RepoConfig struct {
|
||||||
Name string
|
Name string
|
||||||
SigLevel SigLevel
|
SigLevel SigLevel
|
||||||
|
Usage Usage
|
||||||
Servers []string
|
Servers []string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -197,6 +198,24 @@ lineloop:
|
||||||
case "SigLevel":
|
case "SigLevel":
|
||||||
// TODO: implement SigLevel parsing.
|
// TODO: implement SigLevel parsing.
|
||||||
continue lineloop
|
continue lineloop
|
||||||
|
case "Usage":
|
||||||
|
for _, usage := range line.Values {
|
||||||
|
switch usage {
|
||||||
|
case "Sync":
|
||||||
|
curRepo.Usage |= UsageSync
|
||||||
|
case "Search":
|
||||||
|
curRepo.Usage |= UsageSearch
|
||||||
|
case "Install":
|
||||||
|
curRepo.Usage |= UsageInstall
|
||||||
|
case "Upgrade":
|
||||||
|
curRepo.Usage |= UsageUpgrade
|
||||||
|
case "All":
|
||||||
|
curRepo.Usage |= UsageAll
|
||||||
|
default:
|
||||||
|
err = fmt.Errorf("unknown option at line %d: %s", rdr.Lineno, line.Name)
|
||||||
|
break lineloop
|
||||||
|
}
|
||||||
|
}
|
||||||
case "Server":
|
case "Server":
|
||||||
curRepo.Servers = append(curRepo.Servers, line.Values...)
|
curRepo.Servers = append(curRepo.Servers, line.Values...)
|
||||||
continue lineloop
|
continue lineloop
|
||||||
|
@ -261,6 +280,13 @@ lineloop:
|
||||||
conf.CacheDir = []string{"/var/cache/pacman/pkg/"} //should only be set if the config does not specify this
|
conf.CacheDir = []string{"/var/cache/pacman/pkg/"} //should only be set if the config does not specify this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for n, _ := range conf.Repos {
|
||||||
|
repo := &conf.Repos[n]
|
||||||
|
if repo.Usage == 0 {
|
||||||
|
repo.Usage = UsageAll
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return conf, err
|
return conf, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -316,6 +342,7 @@ func (conf *PacmanConfig) CreateHandle() (*Handle, error) {
|
||||||
repoconf.Servers[i] = addr
|
repoconf.Servers[i] = addr
|
||||||
}
|
}
|
||||||
db.SetServers(repoconf.Servers)
|
db.SetServers(repoconf.Servers)
|
||||||
|
db.SetUsage(repoconf.Usage)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
25
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
25
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
|
@ -117,6 +117,11 @@ func (db Db) SetServers(servers []string) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetUsage sets the Usage of the database
|
||||||
|
func (db Db) SetUsage(usage Usage) {
|
||||||
|
C.alpm_db_set_usage(db.ptr, C.int(usage))
|
||||||
|
}
|
||||||
|
|
||||||
// PkgByName searches a package in db.
|
// PkgByName searches a package in db.
|
||||||
func (db Db) PkgByName(name string) (*Package, error) {
|
func (db Db) PkgByName(name string) (*Package, error) {
|
||||||
cName := C.CString(name)
|
cName := C.CString(name)
|
||||||
|
@ -151,3 +156,23 @@ func (db Db) PkgCache() PackageList {
|
||||||
pkgcache := (*list)(unsafe.Pointer(C.alpm_db_get_pkgcache(db.ptr)))
|
pkgcache := (*list)(unsafe.Pointer(C.alpm_db_get_pkgcache(db.ptr)))
|
||||||
return PackageList{pkgcache, db.handle}
|
return PackageList{pkgcache, db.handle}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (db Db) Search(targets []string) PackageList {
|
||||||
|
needles := &C.alpm_list_t{}
|
||||||
|
head := needles
|
||||||
|
needles.data = unsafe.Pointer(C.CString(targets[0]))
|
||||||
|
|
||||||
|
for _, str := range targets[1:] {
|
||||||
|
needles.next = &C.alpm_list_t{}
|
||||||
|
needles = needles.next
|
||||||
|
needles.data = unsafe.Pointer(C.CString(str))
|
||||||
|
}
|
||||||
|
|
||||||
|
pkglist := (*list)(unsafe.Pointer(C.alpm_db_search(db.ptr, needles)))
|
||||||
|
|
||||||
|
for needles = head; needles != nil; needles = needles.next {
|
||||||
|
C.free(needles.data)
|
||||||
|
}
|
||||||
|
|
||||||
|
return PackageList{pkglist, db.handle}
|
||||||
|
}
|
||||||
|
|
39
vendor/github.com/jguer/go-alpm/enums.go
generated
vendored
39
vendor/github.com/jguer/go-alpm/enums.go
generated
vendored
|
@ -89,9 +89,11 @@ const (
|
||||||
SigStatusKeyDisabled
|
SigStatusKeyDisabled
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type LogLevel uint16
|
||||||
|
|
||||||
// Logging levels.
|
// Logging levels.
|
||||||
const (
|
const (
|
||||||
LogError uint16 = 1 << iota
|
LogError LogLevel = 1 << iota
|
||||||
LogWarning
|
LogWarning
|
||||||
LogDebug
|
LogDebug
|
||||||
LogFunction
|
LogFunction
|
||||||
|
@ -118,3 +120,38 @@ const (
|
||||||
ValidationSignature
|
ValidationSignature
|
||||||
ValidationUnkown Validation = 0
|
ValidationUnkown Validation = 0
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type Usage int
|
||||||
|
|
||||||
|
const (
|
||||||
|
UsageSync Usage = 1 << iota
|
||||||
|
UsageSearch
|
||||||
|
UsageInstall
|
||||||
|
UsageUpgrade
|
||||||
|
UsageAll = (1 << 4) - 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type TransFlag int
|
||||||
|
|
||||||
|
const (
|
||||||
|
TransFlagNoDeps TransFlag = 1 << iota
|
||||||
|
TransFlagForce
|
||||||
|
TransFlagNoSave
|
||||||
|
TransFlagNoDepVersion
|
||||||
|
TransFlagCascade
|
||||||
|
TransFlagRecurse
|
||||||
|
// 7 is missing
|
||||||
|
_
|
||||||
|
TransFlagDbOnly
|
||||||
|
TransFlagAllDeps
|
||||||
|
TransFlagDownloadOnly
|
||||||
|
TransFlagNoScriptlets
|
||||||
|
// 12 is missing
|
||||||
|
_
|
||||||
|
TransFlagNoConflicts
|
||||||
|
TransFlagNeeded
|
||||||
|
TransFlagAllExplicit
|
||||||
|
TransFlagUnneeded
|
||||||
|
TransFlagRecurseAll
|
||||||
|
TransFlagNoLock
|
||||||
|
)
|
||||||
|
|
27
vendor/github.com/jguer/go-alpm/sync.go
generated
vendored
Normal file
27
vendor/github.com/jguer/go-alpm/sync.go
generated
vendored
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
// db.go - Functions for database handling.
|
||||||
|
//
|
||||||
|
// Copyright (c) 2013 The go-alpm Authors
|
||||||
|
//
|
||||||
|
// MIT Licensed. See LICENSE for details.
|
||||||
|
|
||||||
|
package alpm
|
||||||
|
|
||||||
|
/*
|
||||||
|
#include <alpm.h>
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
|
||||||
|
func (h *Handle) SyncSysupgrade(enableDowngrade bool) error {
|
||||||
|
intEnableDowngrade := C.int(0)
|
||||||
|
|
||||||
|
if enableDowngrade {
|
||||||
|
intEnableDowngrade = C.int(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
ret := C.alpm_sync_sysupgrade(h.ptr, intEnableDowngrade)
|
||||||
|
if ret != 0 {
|
||||||
|
return h.LastError()
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
54
vendor/github.com/jguer/go-alpm/trans.go
generated
vendored
Normal file
54
vendor/github.com/jguer/go-alpm/trans.go
generated
vendored
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
// db.go - Functions for database handling.
|
||||||
|
//
|
||||||
|
// Copyright (c) 2013 The go-alpm Authors
|
||||||
|
//
|
||||||
|
// MIT Licensed. See LICENSE for details.
|
||||||
|
|
||||||
|
package alpm
|
||||||
|
|
||||||
|
/*
|
||||||
|
#include <alpm.h>
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
|
||||||
|
import (
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
func (h *Handle) TransInit(flags TransFlag) error {
|
||||||
|
ret := C.alpm_trans_init(h.ptr, C.int(flags))
|
||||||
|
if ret != 0 {
|
||||||
|
return h.LastError()
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *Handle) TransRelease() error {
|
||||||
|
ret := C.alpm_trans_release(h.ptr)
|
||||||
|
if ret != 0 {
|
||||||
|
return h.LastError()
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *Handle) TransGetAdd() PackageList {
|
||||||
|
pkgs := C.alpm_trans_get_add(h.ptr)
|
||||||
|
return PackageList{(*list)(unsafe.Pointer(pkgs)), *h}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *Handle) TransGetRemove() PackageList {
|
||||||
|
pkgs := C.alpm_trans_get_remove(h.ptr)
|
||||||
|
return PackageList{(*list)(unsafe.Pointer(pkgs)), *h}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *Handle) TransGetFalgs() (TransFlag, error) {
|
||||||
|
flags := C.alpm_trans_get_flags(h.ptr)
|
||||||
|
|
||||||
|
if flags == -1 {
|
||||||
|
return -1, h.LastError()
|
||||||
|
}
|
||||||
|
|
||||||
|
return TransFlag(flags), nil
|
||||||
|
}
|
8
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
8
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
|
@ -192,6 +192,14 @@ func (question QuestionAny) QuestionSelectProvider() (QuestionSelectProvider, er
|
||||||
return QuestionSelectProvider{}, fmt.Errorf("Can not convert to QuestionInstallIgnorepkg")
|
return QuestionSelectProvider{}, fmt.Errorf("Can not convert to QuestionInstallIgnorepkg")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (question QuestionAny) QuestionReplace() (QuestionReplace, error) {
|
||||||
|
if question.Type() == QuestionTypeReplacePkg {
|
||||||
|
return *(*QuestionReplace)(unsafe.Pointer(&question)), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
return QuestionReplace{}, fmt.Errorf("Can not convert to QuestionReplace")
|
||||||
|
}
|
||||||
|
|
||||||
func (question QuestionInstallIgnorepkg) SetInstall(install bool) {
|
func (question QuestionInstallIgnorepkg) SetInstall(install bool) {
|
||||||
if install {
|
if install {
|
||||||
question.ptr.install = 1
|
question.ptr.install = 1
|
||||||
|
|
4
vendor/github.com/mikkeloscar/aur/aur.go
generated
vendored
4
vendor/github.com/mikkeloscar/aur/aur.go
generated
vendored
|
@ -2,7 +2,7 @@ package aur
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"errors"
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
)
|
)
|
||||||
|
@ -62,7 +62,7 @@ func get(values url.Values) ([]Pkg, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(result.Error) > 0 {
|
if len(result.Error) > 0 {
|
||||||
return nil, fmt.Errorf(result.Error)
|
return nil, errors.New(result.Error)
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.Results, nil
|
return result.Results, nil
|
||||||
|
|
Loading…
Reference in a new issue