From 689f97297691beb266ded94e7b4fdcd4a36da51b Mon Sep 17 00:00:00 2001 From: Ophestra Date: Sat, 23 May 2026 17:53:05 +0900 Subject: [PATCH] internal/rosa/package: migrate stage0 Signed-off-by: Ophestra --- cmd/mbf/main.go | 17 ----------------- internal/rosa/package/stage0.az | 28 +++++++++++++++++++++++++++- internal/rosa/rosa.go | 20 +------------------- 3 files changed, 28 insertions(+), 37 deletions(-) diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go index 8e2c4bda..e5c17ac2 100644 --- a/cmd/mbf/main.go +++ b/cmd/mbf/main.go @@ -439,8 +439,6 @@ func main() { var ( flagGentoo string flagChecksum string - - flagStage0 bool ) c.NewCommand( "stage3", @@ -502,17 +500,6 @@ func main() { "("+pkg.Encode(checksum[0].Value())+")", ) } - - if flagStage0 { - if err = cm.Do(func(cache *pkg.Cache) (err error) { - pathname, _, err = cache.Cure(rosa.Native().Std().NewStage0()) - return - }); err != nil { - return - } - log.Println(pathname) - } - return }, ).Flag( @@ -523,10 +510,6 @@ func main() { &flagChecksum, "checksum", command.StringFlag(""), "Checksum of Gentoo stage3 tarball", - ).Flag( - &flagStage0, - "stage0", command.BoolFlag(false), - "Create bootstrap stage0 tarball", ) } diff --git a/internal/rosa/package/stage0.az b/internal/rosa/package/stage0.az index d1276b82..c6db1bc6 100644 --- a/internal/rosa/package/stage0.az +++ b/internal/rosa/package/stage0.az @@ -1,5 +1,31 @@ -package stage0-dist { +package rosa-stage0 { description = "Rosa OS stage0 bootstrap seed"; + version = unversioned; + exclude = true; + + source = hakurei-source; + extra = [ + llvm, + mksh, + toybox-early, + ]; + overlay = "/stage0"; + exec = generic { + build = ` +umask 377 +tar \ + -vjc \ + -C /stage0 \ + -f /work/stage0-`+triple+`.tar.bz2 \ + . +`; + }; + + inputs = [ bzip2 ]; +} + +package stage0-dist { + description = "Rosa OS stage0 bootstrap seed (binary distribution)"; exclude = true; version* = "20260504"; diff --git a/internal/rosa/rosa.go b/internal/rosa/rosa.go index 1d363204..0a61e9ec 100644 --- a/internal/rosa/rosa.go +++ b/internal/rosa/rosa.go @@ -111,7 +111,7 @@ const ( stageIntermediateGentoo // stageStdGentoo is like Std, but bootstrapped from stageGentoo. This - // toolchain creates the first [Stage0] distribution. + // toolchain creates the first stage0 distribution. stageStdGentoo // stageEarly denotes the stage0 toolchain. Special care must be taken @@ -322,24 +322,6 @@ mkdir -vp /work/system/bin ) } -// NewStage0 returns a [pkg.Artifact] curing to a stage0 distribution. -func (t Toolchain) NewStage0() pkg.Artifact { - return t.New("stage0", 0, t.Append(nil, - H("bzip2"), - ), nil, nil, ` -umask 377 -tar \ - -vjc \ - -C /stage0 \ - -f /work/stage0-`+t.triple()+`.tar.bz2 \ - . -`, pkg.Path(fhs.AbsRoot.Append("stage0"), false, t.Append(nil, - _llvm, - _mksh, - _toyboxEarly, - )...)) -} - // HasStageEarly returns whether a stage0 distribution is available. func (s *S) HasStageEarly() (ok bool) { func() {