From ac5488eef61c8f7e8b5b677ceb85b69df7384f42 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Sat, 23 May 2026 17:30:39 +0900 Subject: [PATCH] internal/rosa/package: migrate initramfs image Signed-off-by: Ophestra --- internal/rosa/images.go | 22 ---------------------- internal/rosa/package/hakurei/package.az | 4 +--- internal/rosa/package/images/initramfs | 4 ++++ internal/rosa/package/images/package.az | 21 +++++++++++++++++++++ 4 files changed, 26 insertions(+), 25 deletions(-) create mode 100644 internal/rosa/package/images/initramfs create mode 100644 internal/rosa/package/images/package.az diff --git a/internal/rosa/images.go b/internal/rosa/images.go index 7635dc6c..3c9b2fbf 100644 --- a/internal/rosa/images.go +++ b/internal/rosa/images.go @@ -27,25 +27,3 @@ mksquashfs /mnt/system /work/system.img )...)) }) } - -func init() { - meta := Metadata{ - Name: "initramfs-image", - Description: "Rosa OS initramfs image", - Version: Unversioned, - } - native.MustRegister(meta.Name, func(t Toolchain) (*Metadata, pkg.Artifact) { - return &meta, t.New("initramfs", TNoToolchain, t.Append(nil, - _zstd, - H("earlyinit"), - H("gen_init_cpio"), - ), nil, nil, ` -gen_init_cpio -t 4294967295 -c /usr/src/initramfs | zstd > /work/initramfs.zst -`, pkg.Path(AbsUsrSrc.Append("initramfs"), false, pkg.NewFile("initramfs", []byte(` -dir /dev 0755 0 0 -nod /dev/null 0666 0 0 c 1 3 -nod /dev/console 0600 0 0 c 5 1 -file /init /system/libexec/hakurei/earlyinit 0555 0 0 -`)))) - }) -} diff --git a/internal/rosa/package/hakurei/package.az b/internal/rosa/package/hakurei/package.az index d21cf282..5470b491 100644 --- a/internal/rosa/package/hakurei/package.az +++ b/internal/rosa/package/hakurei/package.az @@ -143,10 +143,8 @@ package earlyinit { exec = generic { inPlace = true; build = ` -mkdir -p /work/system/libexec/hakurei/ - echo '# Building earlyinit.' -go build -trimpath -v -o /work/system/libexec/hakurei -ldflags="-s -w +go build -trimpath -v -o /work/ -ldflags="-s -w -buildid= -linkmode external -extldflags=-static diff --git a/internal/rosa/package/images/initramfs b/internal/rosa/package/images/initramfs new file mode 100644 index 00000000..1a0a932f --- /dev/null +++ b/internal/rosa/package/images/initramfs @@ -0,0 +1,4 @@ +dir /dev 0755 0 0 +nod /dev/null 0666 0 0 c 1 3 +nod /dev/console 0600 0 0 c 5 1 +file /init /usr/src/initramfs-image/earlyinit 0555 0 0 diff --git a/internal/rosa/package/images/package.az b/internal/rosa/package/images/package.az new file mode 100644 index 00000000..901d1491 --- /dev/null +++ b/internal/rosa/package/images/package.az @@ -0,0 +1,21 @@ +package initramfs-image { + description = "Rosa OS initramfs image"; + version = unversioned; + exclude = true; + + source = earlyinit; + files = { + "initramfs"; + }; + exec = generic { + build = "gen_init_cpio "+ + "-t 4294967295 "+ + "-c /usr/src/initramfs | "+ + "zstd > /work/initramfs.zst"; + }; + + inputs = [ + zstd, + gen_init_cpio, + ]; +}