summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-10-09 02:28:00 -0500
committerJeff Carr <[email protected]>2025-10-09 03:02:55 -0500
commit7c3071e03327917678e8b22778b55c5b5f717314 (patch)
treebccc513d5d8698c8650bd8cdd1cf050d7889db46
parentaf8a330c63c650ad272ee9092d749374510dd190 (diff)
start making packages protobuf
-rw-r--r--Makefile2
-rw-r--r--doDistro.go2
-rw-r--r--main.go32
-rw-r--r--stuff.go10
4 files changed, 43 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 45ad8ce..99777d1 100644
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,7 @@ BUILDTIME = $(shell date +%s)
all: install
-go-build: goimports
+build: goimports
GO111MODULE=off go build \
-ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}"
diff --git a/doDistro.go b/doDistro.go
index f23e60f..20b28fb 100644
--- a/doDistro.go
+++ b/doDistro.go
@@ -30,7 +30,7 @@ func doDistro() error {
// 2. Scan pool directory for .deb files and gather info
log.Printf("Scanning for .deb files in %s\n", poolDir)
- debInfos, err := scanDebs(poolDir)
+ debInfos, err := scanDebs(poolDir, -1)
if err != nil {
log.Printf("Failed to scan .deb files: %v\n", err)
return err
diff --git a/main.go b/main.go
index 3e0f080..6a5e8e6 100644
--- a/main.go
+++ b/main.go
@@ -2,8 +2,11 @@ package main
import (
"embed"
+ "os"
"go.wit.com/lib/gui/prep"
+ "go.wit.com/lib/protobuf/zoopb"
+ "go.wit.com/log"
)
// sent via -ldflags
@@ -26,5 +29,34 @@ func main() {
}
me.sh.GoodExit("")
}
+ os.Chdir("/home/mirrors/wit")
+
+ // 2. Scan pool directory for .deb files and gather info
+ log.Printf("Scanning for .deb files in %s\n", poolDir)
+ debInfos, err := scanDebs(poolDir, 2)
+ if err != nil {
+ log.Printf("Failed to scan .deb files: %v\n", err)
+ me.sh.BadExit("scan pool scan dir", err)
+ }
+
+ pb := zoopb.NewPackages()
+ for _, deb := range debInfos {
+ newdeb := new(zoopb.Package)
+ newdeb.Filename = deb.Filename
+ newdeb.MD5SUM = deb.MD5Sum
+ newdeb.SHA1 = deb.SHA1Sum
+ newdeb.SHA256 = deb.SHA256Sum
+
+ log.Info("%v", deb)
+ for varname, varvalue := range deb.ControlData {
+ if varname == "Package" {
+ newdeb.Package = varvalue
+ }
+ }
+ pb.Append(newdeb)
+ // arch := deb.ControlData["Architecture"]
+ }
+
+ log.Info("len", pb.Len())
me.sh.GoodExit("nothing to do")
}
diff --git a/stuff.go b/stuff.go
index b1e8283..38a68e8 100644
--- a/stuff.go
+++ b/stuff.go
@@ -18,13 +18,21 @@ import (
)
// scanDebs finds all .deb files and extracts their metadata.
-func scanDebs(root string) ([]DebInfo, error) {
+func scanDebs(root string, count int) ([]DebInfo, error) {
var debs []DebInfo
+ var counter int
err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
if !info.IsDir() && strings.HasSuffix(info.Name(), ".deb") {
+ if count == -1 {
+ return nil
+ }
+ counter += 1
+ if counter > count {
+ return nil
+ }
log.Printf(" -> Processing %s", path)
// Get control info