diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-17 13:07:12 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-17 15:56:53 +0900 |
| commit | 30eb0d6a613ad268f6805ccbcdcabf158e7f526f (patch) | |
| tree | 07e55baa52748fd139e183017eeb43f5f64cee59 /internal/rosa/images.go | |
| parent | c2ff9c9fa55ea569a5e70ee90d2eb0b2ee2a0540 (diff) | |
internal/rosa: key metadata by string
For upcoming azalea integration. The API is quite ugly right now to ease migration.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/images.go')
| -rw-r--r-- | internal/rosa/images.go | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/internal/rosa/images.go b/internal/rosa/images.go index 30efbe8a..3441bcf0 100644 --- a/internal/rosa/images.go +++ b/internal/rosa/images.go @@ -6,12 +6,12 @@ import ( ) func init() { - artifactsM[EarlyInit] = Metadata{ + native.MustRegister(&Artifact{ Name: "earlyinit", Description: "Rosa OS initramfs init program", - f: func(t Toolchain) (pkg.Artifact, string) { - return t.newHakurei("-early-init", ` + f: func(t Toolchain, s *S) (pkg.Artifact, string) { + return s.newHakurei(t, "-early-init", ` mkdir -p /work/system/libexec/hakurei/ echo '# Building earlyinit.' @@ -24,15 +24,14 @@ go build -trimpath -v -o /work/system/libexec/hakurei -ldflags="-s -w echo `, false), Unversioned }, - } + }) } - -func (t Toolchain) newImageSystem() (pkg.Artifact, string) { - return t.New("system.img", TNoToolchain, t.AppendPresets(nil, +func (t Toolchain) newImageSystem(s *S) (pkg.Artifact, string) { + return s.New(t, "system.img", TNoToolchain, s.AppendPresets(t, nil, SquashfsTools, ), nil, nil, ` mksquashfs /mnt/system /work/system.img -`, pkg.Path(fhs.AbsRoot.Append("mnt"), false, t.AppendPresets(nil, +`, pkg.Path(fhs.AbsRoot.Append("mnt"), false, s.AppendPresets(t, nil, Musl, Mksh, Toybox, @@ -43,16 +42,15 @@ mksquashfs /mnt/system /work/system.img )...)), Unversioned } func init() { - artifactsM[ImageSystem] = Metadata{ + native.MustRegister(&Artifact{ Name: "system-image", Description: "Rosa OS system image", f: Toolchain.newImageSystem, - } + }) } - -func (t Toolchain) newImageInitramfs() (pkg.Artifact, string) { - return t.New("initramfs", TNoToolchain, t.AppendPresets(nil, +func (t Toolchain) newImageInitramfs(s *S) (pkg.Artifact, string) { + return s.New(t, "initramfs", TNoToolchain, s.AppendPresets(t, nil, Zstd, EarlyInit, GenInitCPIO, @@ -66,10 +64,10 @@ file /init /system/libexec/hakurei/earlyinit 0555 0 0 `)))), Unversioned } func init() { - artifactsM[ImageInitramfs] = Metadata{ + native.MustRegister(&Artifact{ Name: "initramfs-image", Description: "Rosa OS initramfs image", f: Toolchain.newImageInitramfs, - } + }) } |
