diff options
| author | Jeff Carr <[email protected]> | 2025-09-11 19:08:15 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-09-11 19:08:15 -0500 |
| commit | 475e72018e18757026e50c1f80d71b630461b7ec (patch) | |
| tree | 8cbc6bebd3fdebca54bbd9b46ecc5ef59c093a0c /build.go | |
| parent | aedb5a3bef4eb587e56744837f528836986e9f92 (diff) | |
Diffstat (limited to 'build.go')
| -rw-r--r-- | build.go | 100 |
1 files changed, 2 insertions, 98 deletions
@@ -5,11 +5,8 @@ import ( "fmt" "os" "path/filepath" - "strconv" - "strings" "time" - "github.com/go-cmd/cmd" "go.wit.com/lib/gui/shell" "go.wit.com/lib/protobuf/gitpb" "go.wit.com/log" @@ -167,14 +164,14 @@ func buildPackage(repo *gitpb.Repo) (bool, error) { // probably deprecate this log.Info("REPO GO_DEB_CUSTOM=true means binary is not copied") } else { - fname := repo.Control["Package"] + _, fname := filepath.Split(repo.GetFullPath()) cmd := []string{"cp", fname, "files/usr/bin"} log.Info("REPO FILENAME cp", cmd) if err := repo.RunVerbose(cmd); err != nil { log.Warn("cp failed") return false, err } - cmd = []string{"strip", "files/usr/bin/" + filename} + cmd = []string{"strip", "files/usr/bin/" + fname} if err := repo.RunVerbose(cmd); err != nil { log.Warn("strip failed") return false, err @@ -245,96 +242,3 @@ func buildPackage(repo *gitpb.Repo) (bool, error) { } return true, nil } - -func writeDebianControlFile(repo *gitpb.Repo) bool { - filename := "files/DEBIAN/control" - cf, err := os.OpenFile(filename, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644) - if err != nil { - log.Info("open control file failed", err) - return false - } - fmt.Fprintln(cf, "Package:", repo.Control["Package"]) // c.Package.String()) - fmt.Fprintln(cf, "Source:", repo.Control["Source"]) // c.Source.String()) - fmt.Fprintln(cf, "Version:", repo.Control["Version"]) - if repo.Control["Architecture"] == "" { - repo.Control["Architecture"] = "amd64" - } - fmt.Fprintln(cf, "Architecture:", repo.Control["Architecture"]) // c.Architecture.String()) - - writeControlVar(cf, repo, "Depends") - writeControlVar(cf, repo, "Build-Depends") - writeControlVar(cf, repo, "Maintainer") - writeControlVar(cf, repo, "Packager") - writeControlVar(cf, repo, "GoPath") - writeControlVar(cf, repo, "URL") - writeControlVar(cf, repo, "Conflicts") - - stamp := time.Now().UTC().Format("2006/01/02 15:04:05 UTC") - // update to now now despite what the GUI is showing - fmt.Fprintln(cf, "Package-Build-Date:", stamp) - fmt.Fprintln(cf, "Git-Tag-Date:", "todo: get from repo") - - desc, _ := repo.Control["Description"] // c.Description.String() - parts := strings.Split(desc, "\n") - fmt.Fprintln(cf, "Description:", strings.Join(parts, "\n ")) - - log.Info("file written as:", filename) - return true -} - -func writeControlVar(f *os.File, repo *gitpb.Repo, varname string) { - val, _ := repo.Control[varname] - if val == "" { - return - } - fmt.Fprintln(f, varname+":", val) -} - -// try to guess or figure out the config file values -// if there is not a control file -func computeControlValues(repo *gitpb.Repo) bool { - if repo.Control["Package"] == "" { - // get the package name from the repo name - path := repo.Control["pathL"] // c.pathL.String() - parts := strings.Split(path, "/") - name := parts[len(parts)-1] - repo.Control["Package"] = name - } - if repo.Control["Source"] == "" { - repo.Control["Source"] = repo.Control["Package"] - } - if repo.Control["Build-Depends"] == "" { - repo.Control["Build-Depends"] = repo.Control["golang"] - } - if repo.Control["Recommends"] == "" { - repo.Control["Recommends"] = repo.Control["go-gui-toolkits"] - } - if repo.Control["Maintainer"] == "" { - repo.Control["Maintainer"] = "todo: get from ENV" - } - if repo.Control["Description"] == "" { - repo.Control["Description"] = "todo: put URL here" - } - return true -} - -// stamp := time.Now().UTC().Format("2006/01/02 15:04:05 UTC") - -func getDateStamp(tag string) string { - var r cmd.Status - r = me.repo.Run([]string{"git", "log", "-1", "--format=%at", tag}) - - out := strings.Join(r.Stdout, "\n") - out = strings.TrimSpace(out) - - // Convert the string to an integer - gitTagTimestampInt, err := strconv.ParseInt(out, 10, 64) - if err != nil { - fmt.Println("Error converting timestamp:", err) - return "git tag " + tag + " unknown" - } - - // Parse the Unix timestamp into a time.Time object - gitTagDate := time.Unix(gitTagTimestampInt, 0) - return gitTagDate.UTC().Format("2006-01-02_15:04:05_UTC") // close to RFC3339 -} |
