From 2ebecb644e082c167295d3b1f95c229778b2c718 Mon Sep 17 00:00:00 2001 From: AJ ONeal Date: Tue, 10 Mar 2026 18:08:19 -0600 Subject: [PATCH] feat(gitea): add gogit variant tagger Tag assets with "-gogit-" in the filename as the "gogit" variant. These use a pure-Go Git backend instead of the default C Git library. --- internal/classifypkg/classifypkg.go | 3 +++ internal/releases/gitea/variants.go | 25 +++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 internal/releases/gitea/variants.go diff --git a/internal/classifypkg/classifypkg.go b/internal/classifypkg/classifypkg.go index 5a2680f..7e6aa21 100644 --- a/internal/classifypkg/classifypkg.go +++ b/internal/classifypkg/classifypkg.go @@ -19,6 +19,7 @@ import ( "github.com/webinstall/webi-installers/internal/releases/bun" "github.com/webinstall/webi-installers/internal/releases/chromedist" "github.com/webinstall/webi-installers/internal/releases/fish" + "github.com/webinstall/webi-installers/internal/releases/gitea" "github.com/webinstall/webi-installers/internal/releases/flutterdist" "github.com/webinstall/webi-installers/internal/releases/git" "github.com/webinstall/webi-installers/internal/releases/golang" @@ -94,6 +95,8 @@ func TagVariants(pkg string, assets []storage.Asset) { fish.TagVariants(assets) case "git": git.TagVariants(assets) + case "gitea": + gitea.TagVariants(assets) case "lsd": lsd.TagVariants(assets) case "node": diff --git a/internal/releases/gitea/variants.go b/internal/releases/gitea/variants.go new file mode 100644 index 0000000..fe65122 --- /dev/null +++ b/internal/releases/gitea/variants.go @@ -0,0 +1,25 @@ +// Package gitea provides variant tagging for Gitea releases. +// +// Gitea publishes "gogit" builds that use an alternative pure-Go Git +// backend instead of the default C Git library. +package gitea + +import ( + "strings" + + "github.com/webinstall/webi-installers/internal/storage" +) + +// TagVariants tags gitea-specific build variants. +// +// Files containing "-gogit-" in the filename are tagged with the "gogit" +// variant. These use a pure-Go Git backend rather than the default C Git +// library. +func TagVariants(assets []storage.Asset) { + for i := range assets { + lower := strings.ToLower(assets[i].Filename) + if strings.Contains(lower, "gogit") { + assets[i].Variants = append(assets[i].Variants, "gogit") + } + } +}