aboutsummaryrefslogtreecommitdiff
path: root/cmd/yeet
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2025-01-21 17:15:57 -0500
committerXe Iaso <me@xeiaso.net>2025-01-21 17:16:10 -0500
commit60b710369f330c22ce533fd7f1a9734f7d1e2ac0 (patch)
treea5d7dbf93ded4a8c4f4a801d9606cdc9fb0fdfb1 /cmd/yeet
parent6aec44cbf65c5d9351e11a23d10b6d8677fb38b2 (diff)
downloadx-60b710369f330c22ce533fd7f1a9734f7d1e2ac0.tar.xz
x-60b710369f330c22ce533fd7f1a9734f7d1e2ac0.zip
cmd/yeet/internal: move flags here
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'cmd/yeet')
-rw-r--r--cmd/yeet/internal/git.go59
-rw-r--r--cmd/yeet/internal/mkrpm/mkrpm.go67
2 files changed, 67 insertions, 59 deletions
diff --git a/cmd/yeet/internal/git.go b/cmd/yeet/internal/git.go
new file mode 100644
index 0000000..fb8ae26
--- /dev/null
+++ b/cmd/yeet/internal/git.go
@@ -0,0 +1,59 @@
+package internal
+
+import (
+ "context"
+ "flag"
+ "os"
+ "path/filepath"
+
+ "github.com/Songmu/gitconfig"
+ "within.website/x/internal/yeet"
+)
+
+var (
+ GPGKeyFile = flag.String("gpg-key-file", gpgKeyFileLocation(), "GPG key file to sign the package")
+ GPGKeyID = flag.String("gpg-key-id", "", "GPG key ID to sign the package")
+ GPGKeyPassword = flag.String("gpg-key-password", "", "GPG key password to sign the package")
+ UserName = flag.String("git-user-name", GitUserName(), "user name in Git")
+ UserEmail = flag.String("git-user-email", GitUserEmail(), "user email in Git")
+)
+
+const (
+ fallbackName = "Mimi Yasomi"
+ fallbackEmail = "mimi@xeserv.us"
+)
+
+func gpgKeyFileLocation() string {
+ folder, err := os.UserConfigDir()
+ if err != nil {
+ return ""
+ }
+
+ return filepath.Join(folder, "within.website", "x", "yeet", "key.asc")
+}
+
+func GitUserName() string {
+ name, err := gitconfig.User()
+ if err != nil {
+ return fallbackName
+ }
+
+ return name
+}
+
+func GitUserEmail() string {
+ email, err := gitconfig.Email()
+ if err != nil {
+ return fallbackEmail
+ }
+
+ return email
+}
+
+func GitVersion() string {
+ vers, err := yeet.GitTag(context.Background())
+ if err != nil {
+ panic(err)
+ }
+ return vers[1:]
+}
diff --git a/cmd/yeet/internal/mkrpm/mkrpm.go b/cmd/yeet/internal/mkrpm/mkrpm.go
index e0904e3..a12fcff 100644
--- a/cmd/yeet/internal/mkrpm/mkrpm.go
+++ b/cmd/yeet/internal/mkrpm/mkrpm.go
@@ -1,69 +1,18 @@
package mkrpm
import (
- "context"
- "flag"
"fmt"
"log/slog"
"os"
"path/filepath"
"runtime"
- "github.com/Songmu/gitconfig"
"github.com/goreleaser/nfpm/v2"
"github.com/goreleaser/nfpm/v2/files"
_ "github.com/goreleaser/nfpm/v2/rpm"
- "within.website/x/internal/yeet"
+ "within.website/x/cmd/yeet/internal"
)
-var (
- gpgKeyFile = flag.String("gpg-key-file", gpgKeyFileLocation(), "GPG key file to sign the package")
- gpgKeyID = flag.String("gpg-key-id", "", "GPG key ID to sign the package")
- gpgKeyPassword = flag.String("gpg-key-password", "", "GPG key password to sign the package")
- userName = flag.String("git-user-name", gitUserName(), "user name in Git")
- userEmail = flag.String("git-user-email", gitUserEmail(), "user email in Git")
-)
-
-const (
- fallbackName = "Mimi Yasomi"
- fallbackEmail = "mimi@xeserv.us"
-)
-
-func gpgKeyFileLocation() string {
- folder, err := os.UserConfigDir()
- if err != nil {
- return ""
- }
-
- return filepath.Join(folder, "within.website", "x", "yeet", "key.asc")
-}
-
-func gitUserName() string {
- name, err := gitconfig.User()
- if err != nil {
- return fallbackName
- }
-
- return name
-}
-
-func gitUserEmail() string {
- email, err := gitconfig.Email()
- if err != nil {
- return fallbackEmail
- }
-
- return email
-}
-
-func gitVersion() string {
- vers, err := yeet.GitTag(context.Background())
- if err != nil {
- panic(err)
- }
- return vers[1:]
-}
-
type Package struct {
Name string `json:"name"`
Version string `json:"version"`
@@ -97,7 +46,7 @@ func Build(p Package) (foutpath string, err error) {
}()
if p.Version == "" {
- p.Version = gitVersion()
+ p.Version = internal.GitVersion()
}
dir, err := os.MkdirTemp("", "yeet-mkrpm")
@@ -152,7 +101,7 @@ func Build(p Package) (foutpath string, err error) {
Arch: p.Goarch,
Platform: "linux",
Description: p.Description,
- Maintainer: fmt.Sprintf("%s <%s>", *userName, *userEmail),
+ Maintainer: fmt.Sprintf("%s <%s>", *internal.UserName, *internal.UserEmail),
Homepage: p.Homepage,
License: p.License,
Overridables: nfpm.Overridables{
@@ -166,11 +115,11 @@ func Build(p Package) (foutpath string, err error) {
info.Overridables.RPM.Group = p.Group
- if *gpgKeyID != "" {
- slog.Debug("using GPG key", "file", *gpgKeyFile, "id", gpgKeyID, "password", *gpgKeyPassword)
- info.Overridables.RPM.Signature.KeyFile = *gpgKeyFile
- info.Overridables.RPM.Signature.KeyID = gpgKeyID
- info.Overridables.RPM.Signature.KeyPassphrase = *gpgKeyPassword
+ if *internal.GPGKeyID != "" {
+ slog.Debug("using GPG key", "file", *internal.GPGKeyFile, "id", *internal.GPGKeyID, "password", *internal.GPGKeyPassword)
+ info.Overridables.RPM.Signature.KeyFile = *internal.GPGKeyFile
+ info.Overridables.RPM.Signature.KeyID = *&internal.GPGKeyID
+ info.Overridables.RPM.Signature.KeyPassphrase = *internal.GPGKeyPassword
}
pkg, err := nfpm.Get("rpm")