installed.go 567 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. // installed.go - Example of getting a list of installed packages.
  2. //
  3. // Copyright (c) 2013 The go-alpm Authors
  4. //
  5. // MIT Licensed. See LICENSE for details.
  6. package main
  7. import (
  8. "github.com/demizer/go-alpm"
  9. "os"
  10. "fmt"
  11. )
  12. func main() {
  13. h, er := alpm.Init("/", "/var/lib/pacman")
  14. if er != nil {
  15. print(er, "\n")
  16. os.Exit(1)
  17. }
  18. db, er := h.LocalDb()
  19. if er != nil {
  20. fmt.Println(er)
  21. os.Exit(1)
  22. }
  23. for _, pkg := range db.PkgCache().Slice() {
  24. fmt.Printf("%s %s\n", pkg.Name(), pkg.Version())
  25. }
  26. if h.Release() != nil {
  27. os.Exit(1)
  28. }
  29. os.Exit(0)
  30. }