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") + } + } +}