Update default pkg.info content

This commit is contained in:
2025-09-27 21:19:13 +03:00
parent 7a63ad6388
commit 96a39a6b40
3 changed files with 36 additions and 14 deletions
+5 -1
View File
@@ -2,6 +2,10 @@ module git.enumerated.dev/bubble-package-manager/bpm-utils/src/bpm-setup
go 1.23
require github.com/spf13/pflag v1.0.10
require (
bpm-utils-shared v1.0.0
github.com/spf13/pflag v1.0.10
gopkg.in/yaml.v3 v3.0.1
)
replace bpm-utils-shared => ../bpm-utils-shared
+4
View File
@@ -1,2 +1,6 @@
github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+27 -13
View File
@@ -1,7 +1,9 @@
package main
import (
bpmutilsshared "bpm-utils-shared"
"bufio"
"bytes"
"fmt"
"io"
"log"
@@ -12,6 +14,7 @@ import (
"strings"
flag "github.com/spf13/pflag"
yaml "gopkg.in/yaml.v3"
)
var directory = flag.StringP("directory", "D", "", "Path to package directory")
@@ -115,21 +118,32 @@ func createDirectory() {
log.Fatalf("Error: could not create directory: %s", err)
}
// Create pkg.info contents string
pkgInfo := "name: " + *name + "\n"
pkgInfo += "description: " + *description + "\n"
pkgInfo += "version: " + *version + "\n"
if url != nil && *url != "" {
pkgInfo += "url: " + *url + "\n"
// Create package info struct
pkgInfo := bpmutilsshared.PackageInfo{
Name: *name,
Description: *description,
Version: *version,
Url: *url,
License: *license,
Arch: "any",
Type: "source",
Downloads: []bpmutilsshared.PackageDownload{
{
Url: "https://wwww.my-url.com/file.tar.gz",
ExtractStripComponents: 1,
ExtractToBPMSource: true,
Checksum: "replaceme",
},
},
}
if license != nil && *license != "" {
pkgInfo += "license: " + *license + "\n"
}
pkgInfo += "architecture: any\n"
pkgInfo += "type: source\n"
// Write string to file
err = os.WriteFile(path.Join(*directory, "pkg.info"), []byte(pkgInfo), 0644)
var buffer bytes.Buffer
encoder := yaml.NewEncoder(&buffer)
encoder.SetIndent(2)
encoder.Encode(&pkgInfo)
// Write package info to file
err = os.WriteFile(path.Join(*directory, "pkg.info"), buffer.Bytes(), 0644)
if err != nil {
log.Fatalf("Could not write to pkg.info: %s", err)
}