internal/rosa: provide package metadata
All checks were successful
Test / Create distribution (push) Successful in 59s
Test / Sandbox (push) Successful in 2m32s
Test / Hakurei (push) Successful in 3m39s
Test / ShareFS (push) Successful in 3m44s
Test / Sandbox (race detector) (push) Successful in 5m0s
Test / Hakurei (race detector) (push) Successful in 5m56s
Test / Flake checks (push) Successful in 1m29s

This had to be done out-of-band because there was no way to efficiently represent these within Artifact.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-03-04 18:01:18 +09:00
parent 6fdd800b2b
commit 7636f39066
59 changed files with 1286 additions and 478 deletions

View File

@@ -2,7 +2,7 @@ package rosa
import "hakurei.app/internal/pkg"
func (t Toolchain) newToybox(suffix, script string) pkg.Artifact {
func (t Toolchain) newToybox(suffix, script string) (pkg.Artifact, string) {
const (
version = "0.8.13"
checksum = "rZ1V1ATDte2WeQZanxLVoiRGdfPXhMlEo5-exX-e-ml8cGn9qOv0ABEUVZpX3wTI"
@@ -56,15 +56,22 @@ ln -s ../../system/bin/env /work/usr/bin
Gzip,
KernelHeaders,
)
), version
}
func init() {
artifactsF[Toybox] = func(t Toolchain) pkg.Artifact {
return t.newToybox("", "")
artifactsM[Toybox] = Metadata{
f: func(t Toolchain) (pkg.Artifact, string) {
return t.newToybox("", "")
},
Name: "toybox",
Description: "many common Linux command line utilities",
Website: "https://landley.net/toybox/",
}
artifactsF[toyboxEarly] = func(t Toolchain) pkg.Artifact {
return t.newToybox("-early", `
artifactsM[toyboxEarly] = Metadata{
f: func(t Toolchain) (pkg.Artifact, string) {
return t.newToybox("-early", `
echo '
CONFIG_EXPR=y
CONFIG_TR=y
@@ -72,5 +79,10 @@ CONFIG_AWK=y
CONFIG_DIFF=y
' >> .config
`)
},
Name: "toybox-early",
Description: "a build of toybox with unfinished tools enabled to break dependency loops",
Website: "https://landley.net/toybox/",
}
}