Golint fixes
This commit is contained in:
4
file.go
4
file.go
@@ -403,7 +403,7 @@ func (obj *FileResAutoEdges) Next() []ResUUID {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
value := obj.data[obj.pointer]
|
value := obj.data[obj.pointer]
|
||||||
obj.pointer += 1
|
obj.pointer++
|
||||||
return []ResUUID{value} // we return one, even though api supports N
|
return []ResUUID{value} // we return one, even though api supports N
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -432,7 +432,7 @@ func (obj *FileRes) AutoEdges() AutoEdge {
|
|||||||
values := PathSplitFullReversed(obj.GetPath()) // build it
|
values := PathSplitFullReversed(obj.GetPath()) // build it
|
||||||
_, values = values[0], values[1:] // get rid of first value which is me!
|
_, values = values[0], values[1:] // get rid of first value which is me!
|
||||||
for _, x := range values {
|
for _, x := range values {
|
||||||
var reversed bool = true // cheat by passing a pointer
|
var reversed = true // cheat by passing a pointer
|
||||||
data = append(data, &FileUUID{
|
data = append(data, &FileUUID{
|
||||||
BaseUUID: BaseUUID{
|
BaseUUID: BaseUUID{
|
||||||
name: obj.GetName(),
|
name: obj.GetName(),
|
||||||
|
|||||||
141
packagekit.go
141
packagekit.go
@@ -21,7 +21,6 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/godbus/dbus"
|
"github.com/godbus/dbus"
|
||||||
"log"
|
"log"
|
||||||
@@ -141,12 +140,12 @@ type Conn struct {
|
|||||||
conn *dbus.Conn
|
conn *dbus.Conn
|
||||||
}
|
}
|
||||||
|
|
||||||
// struct that is returned by PackagesToPackageIds in the map values
|
// struct that is returned by PackagesToPackageIDs in the map values
|
||||||
type PkPackageIdActionData struct {
|
type PkPackageIDActionData struct {
|
||||||
Found bool
|
Found bool
|
||||||
Installed bool
|
Installed bool
|
||||||
Version string
|
Version string
|
||||||
PackageId string
|
PackageID string
|
||||||
Newest bool
|
Newest bool
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -263,7 +262,7 @@ func (bus *Conn) CreateTransaction() (dbus.ObjectPath, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (bus *Conn) ResolvePackages(packages []string, filter uint64) ([]string, error) {
|
func (bus *Conn) ResolvePackages(packages []string, filter uint64) ([]string, error) {
|
||||||
packageIds := []string{}
|
packageIDs := []string{}
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -299,18 +298,18 @@ loop:
|
|||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("Package") {
|
if signal.Name == FmtTransactionMethod("Package") {
|
||||||
//pkg_int, ok := signal.Body[0].(int)
|
//pkg_int, ok := signal.Body[0].(int)
|
||||||
packageId, ok := signal.Body[1].(string)
|
packageID, ok := signal.Body[1].(string)
|
||||||
// format is: name;version;arch;data
|
// format is: name;version;arch;data
|
||||||
if !ok {
|
if !ok {
|
||||||
continue loop
|
continue loop
|
||||||
}
|
}
|
||||||
//comment, ok := signal.Body[2].(string)
|
//comment, ok := signal.Body[2].(string)
|
||||||
for _, p := range packageIds {
|
for _, p := range packageIDs {
|
||||||
if packageId == p {
|
if packageID == p {
|
||||||
continue loop // duplicate!
|
continue loop // duplicate!
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
packageIds = append(packageIds, packageId)
|
packageIDs = append(packageIDs, packageID)
|
||||||
} else if signal.Name == FmtTransactionMethod("Finished") {
|
} else if signal.Name == FmtTransactionMethod("Finished") {
|
||||||
// TODO: should we wait for the Destroy signal?
|
// TODO: should we wait for the Destroy signal?
|
||||||
break loop
|
break loop
|
||||||
@@ -318,24 +317,24 @@ loop:
|
|||||||
// should already be broken
|
// should already be broken
|
||||||
break loop
|
break loop
|
||||||
} else {
|
} else {
|
||||||
return []string{}, errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return []string{}, fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return packageIds, nil
|
return packageIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (bus *Conn) IsInstalledList(packages []string) ([]bool, error) {
|
func (bus *Conn) IsInstalledList(packages []string) ([]bool, error) {
|
||||||
var filter uint64 = 0
|
var filter uint64 // initializes at the "zero" value of 0
|
||||||
filter += PK_FILTER_ENUM_ARCH // always search in our arch
|
filter += PK_FILTER_ENUM_ARCH // always search in our arch
|
||||||
packageIds, e := bus.ResolvePackages(packages, filter)
|
packageIDs, e := bus.ResolvePackages(packages, filter)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
return nil, errors.New(fmt.Sprintf("ResolvePackages error: %v", e))
|
return nil, fmt.Errorf("ResolvePackages error: %v", e)
|
||||||
}
|
}
|
||||||
|
|
||||||
var m map[string]int = make(map[string]int)
|
var m = make(map[string]int)
|
||||||
for _, packageId := range packageIds {
|
for _, packageID := range packageIDs {
|
||||||
s := strings.Split(packageId, ";")
|
s := strings.Split(packageID, ";")
|
||||||
//if len(s) != 4 { continue } // this would be a bug!
|
//if len(s) != 4 { continue } // this would be a bug!
|
||||||
pkg := s[0]
|
pkg := s[0]
|
||||||
flags := strings.Split(s[3], ":")
|
flags := strings.Split(s[3], ":")
|
||||||
@@ -371,8 +370,8 @@ func (bus *Conn) IsInstalled(pkg string) (bool, error) {
|
|||||||
return p[0], nil
|
return p[0], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// install list of packages by packageId
|
// install list of packages by packageID
|
||||||
func (bus *Conn) InstallPackages(packageIds []string, transactionFlags uint64) error {
|
func (bus *Conn) InstallPackages(packageIDs []string, transactionFlags uint64) error {
|
||||||
|
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
||||||
@@ -384,7 +383,7 @@ func (bus *Conn) InstallPackages(packageIds []string, transactionFlags uint64) e
|
|||||||
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
||||||
|
|
||||||
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
||||||
call := obj.Call(FmtTransactionMethod("InstallPackages"), 0, transactionFlags, packageIds)
|
call := obj.Call(FmtTransactionMethod("InstallPackages"), 0, transactionFlags, packageIDs)
|
||||||
if call.Err != nil {
|
if call.Err != nil {
|
||||||
return call.Err
|
return call.Err
|
||||||
}
|
}
|
||||||
@@ -400,7 +399,7 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
} else if signal.Name == FmtTransactionMethod("Package") {
|
} else if signal.Name == FmtTransactionMethod("Package") {
|
||||||
// a package was installed...
|
// a package was installed...
|
||||||
// only start the timer once we're here...
|
// only start the timer once we're here...
|
||||||
@@ -411,23 +410,23 @@ loop:
|
|||||||
} else if signal.Name == FmtTransactionMethod("Destroy") {
|
} else if signal.Name == FmtTransactionMethod("Destroy") {
|
||||||
return nil // success
|
return nil // success
|
||||||
} else {
|
} else {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
}
|
}
|
||||||
case _ = <-TimeAfterOrBlock(timeout):
|
case _ = <-TimeAfterOrBlock(timeout):
|
||||||
if finished {
|
if finished {
|
||||||
log.Println("PackageKit: Timeout: InstallPackages: Waiting for 'Destroy'")
|
log.Println("PackageKit: Timeout: InstallPackages: Waiting for 'Destroy'")
|
||||||
return nil // got tired of waiting for Destroy
|
return nil // got tired of waiting for Destroy
|
||||||
}
|
}
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Timeout: InstallPackages: %v", strings.Join(packageIds, ", ")))
|
return fmt.Errorf("PackageKit: Timeout: InstallPackages: %v", strings.Join(packageIDs, ", "))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// remove list of packages
|
// remove list of packages
|
||||||
func (bus *Conn) RemovePackages(packageIds []string, transactionFlags uint64) error {
|
func (bus *Conn) RemovePackages(packageIDs []string, transactionFlags uint64) error {
|
||||||
|
|
||||||
var allowDeps bool = true // TODO: configurable
|
var allowDeps = true // TODO: configurable
|
||||||
var autoremove bool = false // unsupported on GNU/Linux
|
var autoremove = false // unsupported on GNU/Linux
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
interfacePath, err := bus.CreateTransaction() // emits Destroy on close
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -438,7 +437,7 @@ func (bus *Conn) RemovePackages(packageIds []string, transactionFlags uint64) er
|
|||||||
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
||||||
|
|
||||||
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
||||||
call := obj.Call(FmtTransactionMethod("RemovePackages"), 0, transactionFlags, packageIds, allowDeps, autoremove)
|
call := obj.Call(FmtTransactionMethod("RemovePackages"), 0, transactionFlags, packageIDs, allowDeps, autoremove)
|
||||||
if call.Err != nil {
|
if call.Err != nil {
|
||||||
return call.Err
|
return call.Err
|
||||||
}
|
}
|
||||||
@@ -453,7 +452,7 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
} else if signal.Name == FmtTransactionMethod("Package") {
|
} else if signal.Name == FmtTransactionMethod("Package") {
|
||||||
// a package was installed...
|
// a package was installed...
|
||||||
continue loop
|
continue loop
|
||||||
@@ -464,7 +463,7 @@ loop:
|
|||||||
// should already be broken
|
// should already be broken
|
||||||
break loop
|
break loop
|
||||||
} else {
|
} else {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -472,7 +471,7 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// update list of packages to versions that are specified
|
// update list of packages to versions that are specified
|
||||||
func (bus *Conn) UpdatePackages(packageIds []string, transactionFlags uint64) error {
|
func (bus *Conn) UpdatePackages(packageIDs []string, transactionFlags uint64) error {
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
interfacePath, err := bus.CreateTransaction()
|
interfacePath, err := bus.CreateTransaction()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -483,7 +482,7 @@ func (bus *Conn) UpdatePackages(packageIds []string, transactionFlags uint64) er
|
|||||||
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
||||||
|
|
||||||
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
||||||
call := obj.Call(FmtTransactionMethod("UpdatePackages"), 0, transactionFlags, packageIds)
|
call := obj.Call(FmtTransactionMethod("UpdatePackages"), 0, transactionFlags, packageIDs)
|
||||||
if call.Err != nil {
|
if call.Err != nil {
|
||||||
return call.Err
|
return call.Err
|
||||||
}
|
}
|
||||||
@@ -498,7 +497,7 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
} else if signal.Name == FmtTransactionMethod("Package") {
|
} else if signal.Name == FmtTransactionMethod("Package") {
|
||||||
} else if signal.Name == FmtTransactionMethod("Finished") {
|
} else if signal.Name == FmtTransactionMethod("Finished") {
|
||||||
// TODO: should we wait for the Destroy signal?
|
// TODO: should we wait for the Destroy signal?
|
||||||
@@ -507,7 +506,7 @@ loop:
|
|||||||
// should already be broken
|
// should already be broken
|
||||||
break loop
|
break loop
|
||||||
} else {
|
} else {
|
||||||
return errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -515,7 +514,7 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// get the list of files that are contained inside a list of packageids
|
// get the list of files that are contained inside a list of packageids
|
||||||
func (bus *Conn) GetFilesByPackageId(packageIds []string) (files map[string][]string, err error) {
|
func (bus *Conn) GetFilesByPackageID(packageIDs []string) (files map[string][]string, err error) {
|
||||||
// NOTE: the maximum number of files in an RPM is 52116 in Fedora 23
|
// NOTE: the maximum number of files in an RPM is 52116 in Fedora 23
|
||||||
// https://gist.github.com/purpleidea/b98e60dcd449e1ac3b8a
|
// https://gist.github.com/purpleidea/b98e60dcd449e1ac3b8a
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
@@ -528,7 +527,7 @@ func (bus *Conn) GetFilesByPackageId(packageIds []string) (files map[string][]st
|
|||||||
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
bus.matchSignal(ch, interfacePath, PkIfaceTransaction, signals)
|
||||||
|
|
||||||
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
obj := bus.GetBus().Object(PkIface, interfacePath) // pass in found transaction path
|
||||||
call := obj.Call(FmtTransactionMethod("GetFiles"), 0, packageIds)
|
call := obj.Call(FmtTransactionMethod("GetFiles"), 0, packageIDs)
|
||||||
if call.Err != nil {
|
if call.Err != nil {
|
||||||
err = call.Err
|
err = call.Err
|
||||||
return
|
return
|
||||||
@@ -546,10 +545,10 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
||||||
err = errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
err = fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
return
|
return
|
||||||
|
|
||||||
// one signal returned per packageId found...
|
// one signal returned per packageID found...
|
||||||
} else if signal.Name == FmtTransactionMethod("Files") {
|
} else if signal.Name == FmtTransactionMethod("Files") {
|
||||||
if len(signal.Body) != 2 { // bad data
|
if len(signal.Body) != 2 { // bad data
|
||||||
continue loop
|
continue loop
|
||||||
@@ -571,7 +570,7 @@ loop:
|
|||||||
// should already be broken
|
// should already be broken
|
||||||
break loop
|
break loop
|
||||||
} else {
|
} else {
|
||||||
err = errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
err = fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -584,7 +583,7 @@ func (bus *Conn) GetUpdates(filter uint64) ([]string, error) {
|
|||||||
if PK_DEBUG {
|
if PK_DEBUG {
|
||||||
log.Println("PackageKit: GetUpdates()")
|
log.Println("PackageKit: GetUpdates()")
|
||||||
}
|
}
|
||||||
packageIds := []string{}
|
packageIDs := []string{}
|
||||||
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
ch := make(chan *dbus.Signal, PkBufferSize) // we need to buffer :(
|
||||||
interfacePath, err := bus.CreateTransaction()
|
interfacePath, err := bus.CreateTransaction()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -610,22 +609,22 @@ loop:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
if signal.Name == FmtTransactionMethod("ErrorCode") {
|
||||||
return nil, errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return nil, fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
} else if signal.Name == FmtTransactionMethod("Package") {
|
} else if signal.Name == FmtTransactionMethod("Package") {
|
||||||
|
|
||||||
//pkg_int, ok := signal.Body[0].(int)
|
//pkg_int, ok := signal.Body[0].(int)
|
||||||
packageId, ok := signal.Body[1].(string)
|
packageID, ok := signal.Body[1].(string)
|
||||||
// format is: name;version;arch;data
|
// format is: name;version;arch;data
|
||||||
if !ok {
|
if !ok {
|
||||||
continue loop
|
continue loop
|
||||||
}
|
}
|
||||||
//comment, ok := signal.Body[2].(string)
|
//comment, ok := signal.Body[2].(string)
|
||||||
for _, p := range packageIds { // optional?
|
for _, p := range packageIDs { // optional?
|
||||||
if packageId == p {
|
if packageID == p {
|
||||||
continue loop // duplicate!
|
continue loop // duplicate!
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
packageIds = append(packageIds, packageId)
|
packageIDs = append(packageIDs, packageID)
|
||||||
} else if signal.Name == FmtTransactionMethod("Finished") {
|
} else if signal.Name == FmtTransactionMethod("Finished") {
|
||||||
// TODO: should we wait for the Destroy signal?
|
// TODO: should we wait for the Destroy signal?
|
||||||
break loop
|
break loop
|
||||||
@@ -633,17 +632,17 @@ loop:
|
|||||||
// should already be broken
|
// should already be broken
|
||||||
break loop
|
break loop
|
||||||
} else {
|
} else {
|
||||||
return nil, errors.New(fmt.Sprintf("PackageKit: Error: %v", signal.Body))
|
return nil, fmt.Errorf("PackageKit: Error: %v", signal.Body)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return packageIds, nil
|
return packageIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// this is a helper function that *might* be generally useful outside mgmtconfig
|
// this is a helper function that *might* be generally useful outside mgmtconfig
|
||||||
// packageMap input has the package names as keys and requested states as values
|
// packageMap input has the package names as keys and requested states as values
|
||||||
// these states can be installed, uninstalled, newest or a requested version str
|
// these states can be installed, uninstalled, newest or a requested version str
|
||||||
func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint64) (map[string]*PkPackageIdActionData, error) {
|
func (bus *Conn) PackagesToPackageIDs(packageMap map[string]string, filter uint64) (map[string]*PkPackageIDActionData, error) {
|
||||||
count := 0
|
count := 0
|
||||||
packages := make([]string, len(packageMap))
|
packages := make([]string, len(packageMap))
|
||||||
for k := range packageMap { // lol, golang has no hash.keys() function!
|
for k := range packageMap { // lol, golang has no hash.keys() function!
|
||||||
@@ -656,28 +655,28 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
}
|
}
|
||||||
|
|
||||||
if PK_DEBUG {
|
if PK_DEBUG {
|
||||||
log.Printf("PackageKit: PackagesToPackageIds(): %v", strings.Join(packages, ", "))
|
log.Printf("PackageKit: PackagesToPackageIDs(): %v", strings.Join(packages, ", "))
|
||||||
}
|
}
|
||||||
resolved, e := bus.ResolvePackages(packages, filter)
|
resolved, e := bus.ResolvePackages(packages, filter)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
return nil, errors.New(fmt.Sprintf("Resolve error: %v", e))
|
return nil, fmt.Errorf("Resolve error: %v", e)
|
||||||
}
|
}
|
||||||
|
|
||||||
found := make([]bool, count) // default false
|
found := make([]bool, count) // default false
|
||||||
installed := make([]bool, count)
|
installed := make([]bool, count)
|
||||||
version := make([]string, count)
|
version := make([]string, count)
|
||||||
usePackageId := make([]string, count)
|
usePackageID := make([]string, count)
|
||||||
newest := make([]bool, count) // default true
|
newest := make([]bool, count) // default true
|
||||||
for i := range newest {
|
for i := range newest {
|
||||||
newest[i] = true // assume, for now
|
newest[i] = true // assume, for now
|
||||||
}
|
}
|
||||||
var index int
|
var index int
|
||||||
|
|
||||||
for _, packageId := range resolved {
|
for _, packageID := range resolved {
|
||||||
index = -1
|
index = -1
|
||||||
//log.Printf("* %v", packageId)
|
//log.Printf("* %v", packageID)
|
||||||
// format is: name;version;arch;data
|
// format is: name;version;arch;data
|
||||||
s := strings.Split(packageId, ";")
|
s := strings.Split(packageID, ";")
|
||||||
//if len(s) != 4 { continue } // this would be a bug!
|
//if len(s) != 4 { continue } // this would be a bug!
|
||||||
pkg, ver, arch, data := s[0], s[1], s[2], s[3]
|
pkg, ver, arch, data := s[0], s[1], s[2], s[3]
|
||||||
// we might need to allow some of this, eg: i386 .deb on amd64
|
// we might need to allow some of this, eg: i386 .deb on amd64
|
||||||
@@ -695,14 +694,14 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
}
|
}
|
||||||
state := packageMap[pkg] // lookup the requested state/version
|
state := packageMap[pkg] // lookup the requested state/version
|
||||||
if state == "" {
|
if state == "" {
|
||||||
return nil, errors.New(fmt.Sprintf("Empty package state for %v", pkg))
|
return nil, fmt.Errorf("Empty package state for %v", pkg)
|
||||||
}
|
}
|
||||||
found[index] = true
|
found[index] = true
|
||||||
stateIsVersion := (state != "installed" && state != "uninstalled" && state != "newest") // must be a ver. string
|
stateIsVersion := (state != "installed" && state != "uninstalled" && state != "newest") // must be a ver. string
|
||||||
|
|
||||||
if stateIsVersion {
|
if stateIsVersion {
|
||||||
if state == ver && ver != "" { // we match what we want...
|
if state == ver && ver != "" { // we match what we want...
|
||||||
usePackageId[index] = packageId
|
usePackageID[index] = packageID
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -712,7 +711,7 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
// state of "uninstalled" matched during CheckApply, and
|
// state of "uninstalled" matched during CheckApply, and
|
||||||
// states of "installed" and "newest" for fileList
|
// states of "installed" and "newest" for fileList
|
||||||
if !stateIsVersion {
|
if !stateIsVersion {
|
||||||
usePackageId[index] = packageId // save for later
|
usePackageID[index] = packageID // save for later
|
||||||
}
|
}
|
||||||
} else { // not installed...
|
} else { // not installed...
|
||||||
if !stateIsVersion {
|
if !stateIsVersion {
|
||||||
@@ -721,7 +720,7 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
// then this section can run more than once...
|
// then this section can run more than once...
|
||||||
// in that case, don't worry, we'll choose the
|
// in that case, don't worry, we'll choose the
|
||||||
// right value in the "updates" section below!
|
// right value in the "updates" section below!
|
||||||
usePackageId[index] = packageId
|
usePackageID[index] = packageID
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -733,12 +732,12 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
// FIXME: https://github.com/hughsie/PackageKit/issues/116
|
// FIXME: https://github.com/hughsie/PackageKit/issues/116
|
||||||
updates, e := bus.GetUpdates(filter)
|
updates, e := bus.GetUpdates(filter)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
return nil, errors.New(fmt.Sprintf("Updates error: %v", e))
|
return nil, fmt.Errorf("Updates error: %v", e)
|
||||||
}
|
}
|
||||||
for _, packageId := range updates {
|
for _, packageID := range updates {
|
||||||
//log.Printf("* %v", packageId)
|
//log.Printf("* %v", packageID)
|
||||||
// format is: name;version;arch;data
|
// format is: name;version;arch;data
|
||||||
s := strings.Split(packageId, ";")
|
s := strings.Split(packageID, ";")
|
||||||
//if len(s) != 4 { continue } // this would be a bug!
|
//if len(s) != 4 { continue } // this would be a bug!
|
||||||
pkg, _, _, _ := s[0], s[1], s[2], s[3]
|
pkg, _, _, _ := s[0], s[1], s[2], s[3]
|
||||||
for index := range packages { // find pkg if it exists
|
for index := range packages { // find pkg if it exists
|
||||||
@@ -747,7 +746,7 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
newest[index] = false
|
newest[index] = false
|
||||||
if state == "installed" || state == "newest" {
|
if state == "installed" || state == "newest" {
|
||||||
// fix up in case above wasn't correct!
|
// fix up in case above wasn't correct!
|
||||||
usePackageId[index] = packageId
|
usePackageID[index] = packageID
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@@ -756,8 +755,8 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
|
|
||||||
// skip if the "newest" filter was used, otherwise we might need fixing
|
// skip if the "newest" filter was used, otherwise we might need fixing
|
||||||
// this check is for packages that need to verify their "newest" status
|
// this check is for packages that need to verify their "newest" status
|
||||||
// we need to know this so we can install the correct newest packageId!
|
// we need to know this so we can install the correct newest packageID!
|
||||||
recursion := make(map[string]*PkPackageIdActionData)
|
recursion := make(map[string]*PkPackageIDActionData)
|
||||||
if !(filter&PK_FILTER_ENUM_NEWEST == PK_FILTER_ENUM_NEWEST) {
|
if !(filter&PK_FILTER_ENUM_NEWEST == PK_FILTER_ENUM_NEWEST) {
|
||||||
checkPackages := []string{}
|
checkPackages := []string{}
|
||||||
filteredPackageMap := make(map[string]string)
|
filteredPackageMap := make(map[string]string)
|
||||||
@@ -779,17 +778,17 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
// but that's basically what recursion here could do too!
|
// but that's basically what recursion here could do too!
|
||||||
if len(checkPackages) > 0 {
|
if len(checkPackages) > 0 {
|
||||||
if PK_DEBUG {
|
if PK_DEBUG {
|
||||||
log.Printf("PackageKit: PackagesToPackageIds(): Recurse: %v", strings.Join(checkPackages, ", "))
|
log.Printf("PackageKit: PackagesToPackageIDs(): Recurse: %v", strings.Join(checkPackages, ", "))
|
||||||
}
|
}
|
||||||
recursion, e = bus.PackagesToPackageIds(filteredPackageMap, filter+PK_FILTER_ENUM_NEWEST)
|
recursion, e = bus.PackagesToPackageIDs(filteredPackageMap, filter+PK_FILTER_ENUM_NEWEST)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
return nil, errors.New(fmt.Sprintf("Recursion error: %v", e))
|
return nil, fmt.Errorf("Recursion error: %v", e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// fix up and build result format
|
// fix up and build result format
|
||||||
result := make(map[string]*PkPackageIdActionData)
|
result := make(map[string]*PkPackageIDActionData)
|
||||||
for index, pkg := range packages {
|
for index, pkg := range packages {
|
||||||
|
|
||||||
if !found[index] || !installed[index] {
|
if !found[index] || !installed[index] {
|
||||||
@@ -800,11 +799,11 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
if lookup, ok := recursion[pkg]; ok {
|
if lookup, ok := recursion[pkg]; ok {
|
||||||
result[pkg] = lookup
|
result[pkg] = lookup
|
||||||
} else {
|
} else {
|
||||||
result[pkg] = &PkPackageIdActionData{
|
result[pkg] = &PkPackageIDActionData{
|
||||||
Found: found[index],
|
Found: found[index],
|
||||||
Installed: installed[index],
|
Installed: installed[index],
|
||||||
Version: version[index],
|
Version: version[index],
|
||||||
PackageId: usePackageId[index],
|
PackageID: usePackageID[index],
|
||||||
Newest: newest[index],
|
Newest: newest[index],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -813,7 +812,7 @@ func (bus *Conn) PackagesToPackageIds(packageMap map[string]string, filter uint6
|
|||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// does flag exist inside data portion of packageId field?
|
// does flag exist inside data portion of packageID field?
|
||||||
func FlagInData(flag, data string) bool {
|
func FlagInData(flag, data string) bool {
|
||||||
flags := strings.Split(data, ":")
|
flags := strings.Split(data, ":")
|
||||||
for _, f := range flags {
|
for _, f := range flags {
|
||||||
|
|||||||
37
pkg.go
37
pkg.go
@@ -70,14 +70,14 @@ func (obj *PkgRes) Init() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
packageIds := []string{data.PackageId} // just one for now
|
packageIDs := []string{data.PackageID} // just one for now
|
||||||
filesMap, err := bus.GetFilesByPackageId(packageIds)
|
filesMap, err := bus.GetFilesByPackageID(packageIDs)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// FIXME: return error?
|
// FIXME: return error?
|
||||||
log.Fatalf("Can't run GetFilesByPackageId: %v", err)
|
log.Fatalf("Can't run GetFilesByPackageID: %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if files, ok := filesMap[data.PackageId]; ok {
|
if files, ok := filesMap[data.PackageID]; ok {
|
||||||
obj.fileList = DirifyFileList(files, false)
|
obj.fileList = DirifyFileList(files, false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -129,7 +129,6 @@ func (obj *PkgRes) Watch() {
|
|||||||
obj.SetState(resStateWatching) // reset
|
obj.SetState(resStateWatching) // reset
|
||||||
select {
|
select {
|
||||||
case event := <-ch:
|
case event := <-ch:
|
||||||
|
|
||||||
// FIXME: ask packagekit for info on what packages changed
|
// FIXME: ask packagekit for info on what packages changed
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("Pkg[%v]: Event: %v", obj.GetName(), event.Name)
|
log.Printf("Pkg[%v]: Event: %v", obj.GetName(), event.Name)
|
||||||
@@ -171,18 +170,18 @@ func (obj *PkgRes) Watch() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *PkgRes) PkgMappingHelper(bus *Conn) (*PkPackageIdActionData, error) {
|
func (obj *PkgRes) PkgMappingHelper(bus *Conn) (*PkPackageIDActionData, error) {
|
||||||
|
|
||||||
var packageMap = map[string]string{
|
var packageMap = map[string]string{
|
||||||
obj.Name: obj.State, // key is pkg name, value is pkg state
|
obj.Name: obj.State, // key is pkg name, value is pkg state
|
||||||
}
|
}
|
||||||
var filter uint64 = 0
|
var filter uint64 // initializes at the "zero" value of 0
|
||||||
filter += PK_FILTER_ENUM_ARCH // always search in our arch (optional!)
|
filter += PK_FILTER_ENUM_ARCH // always search in our arch (optional!)
|
||||||
// we're requesting latest version, or to narrow down install choices!
|
// we're requesting latest version, or to narrow down install choices!
|
||||||
if obj.State == "newest" || obj.State == "installed" {
|
if obj.State == "newest" || obj.State == "installed" {
|
||||||
// if we add this, we'll still see older packages if installed
|
// if we add this, we'll still see older packages if installed
|
||||||
// this is an optimization, and is *optional*, this logic is
|
// this is an optimization, and is *optional*, this logic is
|
||||||
// handled inside of PackagesToPackageIds now automatically!
|
// handled inside of PackagesToPackageIDs now automatically!
|
||||||
filter += PK_FILTER_ENUM_NEWEST // only search for newest packages
|
filter += PK_FILTER_ENUM_NEWEST // only search for newest packages
|
||||||
}
|
}
|
||||||
if !obj.AllowNonFree {
|
if !obj.AllowNonFree {
|
||||||
@@ -191,15 +190,15 @@ func (obj *PkgRes) PkgMappingHelper(bus *Conn) (*PkPackageIdActionData, error) {
|
|||||||
if !obj.AllowUnsupported {
|
if !obj.AllowUnsupported {
|
||||||
filter += PK_FILTER_ENUM_SUPPORTED
|
filter += PK_FILTER_ENUM_SUPPORTED
|
||||||
}
|
}
|
||||||
result, e := bus.PackagesToPackageIds(packageMap, filter)
|
result, e := bus.PackagesToPackageIDs(packageMap, filter)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
return nil, errors.New(fmt.Sprintf("Can't run PackagesToPackageIds: %v", e))
|
return nil, fmt.Errorf("Can't run PackagesToPackageIDs: %v", e)
|
||||||
}
|
}
|
||||||
|
|
||||||
data, ok := result[obj.Name] // lookup single package
|
data, ok := result[obj.Name] // lookup single package
|
||||||
// package doesn't exist, this is an error!
|
// package doesn't exist, this is an error!
|
||||||
if !ok || !data.Found {
|
if !ok || !data.Found {
|
||||||
return nil, errors.New(fmt.Sprintf("Can't find package named '%s'.", obj.Name))
|
return nil, fmt.Errorf("Can't find package named '%s'.", obj.Name)
|
||||||
}
|
}
|
||||||
|
|
||||||
return data, nil
|
return data, nil
|
||||||
@@ -224,7 +223,7 @@ func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
|
|
||||||
data, err := obj.PkgMappingHelper(bus)
|
data, err := obj.PkgMappingHelper(bus)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("The PkgMappingHelper failed with: %v.", err))
|
return false, fmt.Errorf("The PkgMappingHelper failed with: %v.", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// obj.State == "installed" || "uninstalled" || "newest" || "4.2-1.fc23"
|
// obj.State == "installed" || "uninstalled" || "newest" || "4.2-1.fc23"
|
||||||
@@ -247,7 +246,7 @@ func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if data.PackageId == "" {
|
if data.PackageID == "" {
|
||||||
return false, errors.New("Can't find package id to use.")
|
return false, errors.New("Can't find package id to use.")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -258,16 +257,16 @@ func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
|
|
||||||
// apply portion
|
// apply portion
|
||||||
log.Printf("%v[%v]: Apply", obj.Kind(), obj.GetName())
|
log.Printf("%v[%v]: Apply", obj.Kind(), obj.GetName())
|
||||||
packageList := []string{data.PackageId}
|
packageList := []string{data.PackageID}
|
||||||
var transactionFlags uint64 = 0
|
var transactionFlags uint64 // initializes at the "zero" value of 0
|
||||||
if !obj.AllowUntrusted { // allow
|
if !obj.AllowUntrusted { // allow
|
||||||
transactionFlags += PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED
|
transactionFlags += PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED
|
||||||
}
|
}
|
||||||
// apply correct state!
|
// apply correct state!
|
||||||
log.Printf("%v[%v]: Set: %v...", obj.Kind(), obj.GetName(), obj.State)
|
log.Printf("%v[%v]: Set: %v...", obj.Kind(), obj.GetName(), obj.State)
|
||||||
switch obj.State {
|
switch obj.State {
|
||||||
case "uninstalled": // run remove
|
case "uninstalled": // run remove
|
||||||
// NOTE: packageId is different than when installed, because now
|
// NOTE: packageID is different than when installed, because now
|
||||||
// it has the "installed" flag added to the data portion if it!!
|
// it has the "installed" flag added to the data portion if it!!
|
||||||
err = bus.RemovePackages(packageList, transactionFlags)
|
err = bus.RemovePackages(packageList, transactionFlags)
|
||||||
|
|
||||||
@@ -325,7 +324,7 @@ func (obj *PkgResAutoEdges) Next() []ResUUID {
|
|||||||
var result []ResUUID
|
var result []ResUUID
|
||||||
// return UUID's for whatever is in obj.fileList
|
// return UUID's for whatever is in obj.fileList
|
||||||
for _, x := range obj.fileList {
|
for _, x := range obj.fileList {
|
||||||
var reversed bool = false // cheat by passing a pointer
|
var reversed = false // cheat by passing a pointer
|
||||||
result = append(result, &FileUUID{
|
result = append(result, &FileUUID{
|
||||||
BaseUUID: BaseUUID{
|
BaseUUID: BaseUUID{
|
||||||
name: obj.name,
|
name: obj.name,
|
||||||
@@ -397,7 +396,7 @@ func (obj *PkgRes) AutoEdges() AutoEdge {
|
|||||||
// add matches for any svc resources found in pkg definition!
|
// add matches for any svc resources found in pkg definition!
|
||||||
var svcUUIDs []ResUUID
|
var svcUUIDs []ResUUID
|
||||||
for _, x := range ReturnSvcInFileList(obj.fileList) {
|
for _, x := range ReturnSvcInFileList(obj.fileList) {
|
||||||
var reversed bool = false
|
var reversed = false
|
||||||
svcUUIDs = append(svcUUIDs, &SvcUUID{
|
svcUUIDs = append(svcUUIDs, &SvcUUID{
|
||||||
BaseUUID: BaseUUID{
|
BaseUUID: BaseUUID{
|
||||||
name: obj.GetName(),
|
name: obj.GetName(),
|
||||||
|
|||||||
20
svc.go
20
svc.go
@@ -229,7 +229,7 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
|
|
||||||
conn, err := systemd.NewSystemdConnection() // needs root access
|
conn, err := systemd.NewSystemdConnection() // needs root access
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to connect to systemd: %v", err))
|
return false, fmt.Errorf("Failed to connect to systemd: %v", err)
|
||||||
}
|
}
|
||||||
defer conn.Close()
|
defer conn.Close()
|
||||||
|
|
||||||
@@ -237,13 +237,13 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
|
|
||||||
loadstate, err := conn.GetUnitProperty(svc, "LoadState")
|
loadstate, err := conn.GetUnitProperty(svc, "LoadState")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to get load state: %v", err))
|
return false, fmt.Errorf("Failed to get load state: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// NOTE: we have to compare variants with other variants, they are really strings...
|
// NOTE: we have to compare variants with other variants, they are really strings...
|
||||||
var notFound = (loadstate.Value == dbus.MakeVariant("not-found"))
|
var notFound = (loadstate.Value == dbus.MakeVariant("not-found"))
|
||||||
if notFound {
|
if notFound {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to find svc: %v", svc))
|
return false, fmt.Errorf("Failed to find svc: %v", svc)
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX: check svc "enabled at boot" or not status...
|
// XXX: check svc "enabled at boot" or not status...
|
||||||
@@ -251,7 +251,7 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
//conn.GetUnitProperties(svc)
|
//conn.GetUnitProperties(svc)
|
||||||
activestate, err := conn.GetUnitProperty(svc, "ActiveState")
|
activestate, err := conn.GetUnitProperty(svc, "ActiveState")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to get active state: %v", err))
|
return false, fmt.Errorf("Failed to get active state: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
var running = (activestate.Value == dbus.MakeVariant("active"))
|
var running = (activestate.Value == dbus.MakeVariant("active"))
|
||||||
@@ -278,7 +278,7 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Unable to change startup status: %v", err))
|
return false, fmt.Errorf("Unable to change startup status: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX: do we need to use a buffered channel here?
|
// XXX: do we need to use a buffered channel here?
|
||||||
@@ -287,12 +287,12 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
if obj.State == "running" {
|
if obj.State == "running" {
|
||||||
_, err = conn.StartUnit(svc, "fail", result)
|
_, err = conn.StartUnit(svc, "fail", result)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to start unit: %v", err))
|
return false, fmt.Errorf("Failed to start unit: %v", err)
|
||||||
}
|
}
|
||||||
} else if obj.State == "stopped" {
|
} else if obj.State == "stopped" {
|
||||||
_, err = conn.StopUnit(svc, "fail", result)
|
_, err = conn.StopUnit(svc, "fail", result)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, errors.New(fmt.Sprintf("Failed to stop unit: %v", err))
|
return false, fmt.Errorf("Failed to stop unit: %v", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -301,7 +301,7 @@ func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
return false, errors.New("Systemd service action result is nil")
|
return false, errors.New("Systemd service action result is nil")
|
||||||
}
|
}
|
||||||
if status != "done" {
|
if status != "done" {
|
||||||
return false, errors.New(fmt.Sprintf("Unknown systemd return string: %v", status))
|
return false, fmt.Errorf("Unknown systemd return string: %v", status)
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX: also set enabled on boot
|
// XXX: also set enabled on boot
|
||||||
@@ -342,7 +342,7 @@ func (obj *SvcResAutoEdges) Next() []ResUUID {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
value := obj.data[obj.pointer]
|
value := obj.data[obj.pointer]
|
||||||
obj.pointer += 1
|
obj.pointer++
|
||||||
return []ResUUID{value} // we return one, even though api supports N
|
return []ResUUID{value} // we return one, even though api supports N
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -372,7 +372,7 @@ func (obj *SvcRes) AutoEdges() AutoEdge {
|
|||||||
fmt.Sprintf("/usr/lib/systemd/system/%s.service", obj.Name), // pkg default
|
fmt.Sprintf("/usr/lib/systemd/system/%s.service", obj.Name), // pkg default
|
||||||
}
|
}
|
||||||
for _, x := range svcFiles {
|
for _, x := range svcFiles {
|
||||||
var reversed bool = true
|
var reversed = true
|
||||||
data = append(data, &FileUUID{
|
data = append(data, &FileUUID{
|
||||||
BaseUUID: BaseUUID{
|
BaseUUID: BaseUUID{
|
||||||
name: obj.GetName(),
|
name: obj.GetName(),
|
||||||
|
|||||||
Reference in New Issue
Block a user