aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/images.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/rosa/images.go')
-rw-r--r--internal/rosa/images.go24
1 files changed, 23 insertions, 1 deletions
diff --git a/internal/rosa/images.go b/internal/rosa/images.go
index 52ff8f65..bef35d2a 100644
--- a/internal/rosa/images.go
+++ b/internal/rosa/images.go
@@ -2,10 +2,32 @@ package rosa
import "hakurei.app/internal/pkg"
+func init() {
+ artifactsM[EarlyInit] = Metadata{
+ Name: "earlyinit",
+ Description: "Rosa OS initramfs init program",
+
+ f: func(t Toolchain) (pkg.Artifact, string) {
+ return t.newHakurei("-early-init", `
+mkdir -p /work/system/libexec/hakurei/
+
+echo '# Building earlyinit.'
+go build -trimpath -v -o /work/system/libexec/hakurei -ldflags="-s -w
+ -buildid=
+ -linkmode external
+ -extldflags=-static
+ -X hakurei.app/internal/info.buildVersion=${HAKUREI_VERSION}
+" ./cmd/earlyinit
+echo
+`, false), Unversioned
+ },
+ }
+}
+
func (t Toolchain) newImageInitramfs() (pkg.Artifact, string) {
return t.New("initramfs", TNoToolchain, []pkg.Artifact{
t.Load(Zstd),
- t.Load(Hakurei),
+ t.Load(EarlyInit),
t.Load(GenInitCPIO),
}, nil, nil, `
gen_init_cpio -t 4294967295 -c /usr/src/initramfs | zstd > /work/initramfs.zst