From d7be78aeaa1bcb8186233f5f8807d5d0c2a5dfb0 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Tue, 14 Oct 2025 07:11:55 -0500 Subject: rename --- tableMachinePackages.go | 116 -------------------------------------------- tableSmart.go | 125 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+), 116 deletions(-) delete mode 100644 tableMachinePackages.go create mode 100644 tableSmart.go diff --git a/tableMachinePackages.go b/tableMachinePackages.go deleted file mode 100644 index 93208c0..0000000 --- a/tableMachinePackages.go +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2025 WIT.COM Inc Licensed GPL 3.0 - -package zoopb - -import ( - "go.wit.com/log" -) - -// tables for what packages are currently installed - -func (m *Machine) PrintTable(pb *Packages) { - tablePB := m.makeSmartTable(pb) - tablePB.PrintTable() - var i int - for p := range pb.IterAll() { - if m.IsInstalled(p.Package) { - i += 1 - } - } - - log.Printf("pb.SmartTable: packages: total=%d installed=%d\n", pb.Len(), i) -} - -func (m *Machine) PrintInstalledTable() { - installed := NewPackages() - for p := range m.Wit.IterAll() { - if m.IsInstalled(p.Package) { - installed.Append(p) - } - } - tablePB := m.makeSmartTable(installed) - if tablePB == nil { - panic("WTF") - } - tablePB.PrintTable() - log.Printf("pb.SmartTable: %d installed packages\n", installed.Len()) -} - -func (m *Machine) makeSmartTable(pb *Packages) *PackagesTable { - t := pb.NewTable("apt packages") - t.NewUuid() - - var col *PackageFunc - - col = t.AddStringFunc(" I", func(p *Package) string { - if m.IsInstalled(p.Package) { - return " X" - } - return "" - }) - col.Width = 3 - - col = t.AddStringFunc("U", func(p *Package) string { - if m.WillUpgrade(p) { - return "X" - } - return "" - }) - col.Width = 1 - - col = t.AddPackage() - col.Width = 16 - - col = t.AddVersion() - col.Width = 20 - - col = t.AddStringFunc("md5sum", func(p *Package) string { - if p.DebInfo == nil { - return "" - } - return p.DebInfo.MD5SUM - }) - col.Width = 3 - - col = t.AddFilename() - col.Width = -1 - col.Header.Name = "apt package path" - - return t -} - -// true if the package 'p' is newer than the installed package -func (m *Machine) WillUpgrade(p *Package) bool { - check := m.FindInstalledByName(p.Package) - if check == nil { - // not installed. can not upgrade - return false - } - if check.Version != p.Version { - return true - } - return false -} - -/* -// this means somehow this machine has a newer version than the mirrors have -// true if the package 'p' is newer than the installed package -func (m *Machine) MirrorsOutOfDate(p *Package) bool { - check := m.FindInstalledByName(p.Package) - if check == nil { - // not installed - return false - } - v1, _ := fhelp.NewDebVersion(check.Version) - v2, _ := fhelp.NewDebVersion(p.Version) - if v1.Equal(v2) { - // log.Info("do nothing", v1, v2) - return false - } - if v2.LessThan(v1) { - log.Info("wow. you have a newer version on this box than the mirrors", v1, "to", v2) - return true - } - return false -} -*/ diff --git a/tableSmart.go b/tableSmart.go new file mode 100644 index 0000000..64a9877 --- /dev/null +++ b/tableSmart.go @@ -0,0 +1,125 @@ +// Copyright 2025 WIT.COM Inc Licensed GPL 3.0 + +package zoopb + +import ( + "go.wit.com/lib/cobol" + "go.wit.com/log" +) + +// tables for what packages are currently installed + +func (m *Machine) PrintTable(pb *Packages) { + tablePB := m.makeSmartTable(pb) + tablePB.PrintTable() + var i int + for p := range pb.IterAll() { + if m.IsInstalled(p.Package) { + i += 1 + } + } + + log.Printf("pb.SmartTable: packages: total=%d installed=%d\n", pb.Len(), i) +} + +func (m *Machine) PrintInstalledTable() { + installed := NewPackages() + for p := range m.Wit.IterAll() { + if m.IsInstalled(p.Package) { + installed.Append(p) + } + } + tablePB := m.makeSmartTable(installed) + if tablePB == nil { + panic("WTF") + } + tablePB.PrintTable() + log.Printf("pb.SmartTable: %d installed packages\n", installed.Len()) +} + +func (m *Machine) makeSmartTable(pb *Packages) *PackagesTable { + t := pb.NewTable("apt packages") + t.NewUuid() + + var col *PackageFunc + + col = t.AddStringFunc(" I", func(p *Package) string { + if m.IsInstalled(p.Package) { + return " X" + } + return "" + }) + col.Width = 3 + + col = t.AddStringFunc("U", func(p *Package) string { + if m.WillUpgrade(p) { + return "X" + } + return "" + }) + col.Width = 1 + + col = t.AddStringFunc("DebCtime", func(p *Package) string { + if p.DebInfo == nil { + return "debinfo == nil" + } + if p.DebInfo.DebCtime != "" { + return p.DebInfo.DebCtime + } + if p.BuildDate != nil { + return "not " + cobol.Time(p.BuildDate) + } + if p.Ctime != nil { + return "lies " + cobol.Time(p.Ctime) + } + return "" + }) + col.Width = 22 + + col = t.AddStringFunc("anytime", func(p *Package) string { + if p.DebInfo == nil { + return "debinfo == nil" + } + if p.BuildDate != nil { + return "not " + cobol.Time(p.BuildDate) + } + if p.Ctime != nil { + return "lies " + cobol.Time(p.Ctime) + } + return "" + }) + col.Width = 22 + + col = t.AddPackage() + col.Width = 16 + + col = t.AddVersion() + col.Width = 20 + + col = t.AddStringFunc("md5sum", func(p *Package) string { + if p.DebInfo == nil { + return "" + } + return p.DebInfo.MD5SUM + }) + col.Width = 3 + + col = t.AddFilename() + col.Width = -1 + col.Header.Name = "apt package path" + + return t +} + +// true if the package 'p' is newer than the installed package +func (m *Machine) WillUpgrade(p *Package) bool { + check := m.FindInstalledByName(p.Package) + if check == nil { + // not installed. can not upgrade + return false + } + if check.Version != p.Version { + return true + } + return false +} -- cgit v1.2.3