aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/kernel.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-05-17 13:07:12 +0900
committerOphestra <cat@gensokyo.uk>2026-05-17 15:56:53 +0900
commit30eb0d6a613ad268f6805ccbcdcabf158e7f526f (patch)
tree07e55baa52748fd139e183017eeb43f5f64cee59 /internal/rosa/kernel.go
parentc2ff9c9fa55ea569a5e70ee90d2eb0b2ee2a0540 (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/kernel.go')
-rw-r--r--internal/rosa/kernel.go40
1 files changed, 20 insertions, 20 deletions
diff --git a/internal/rosa/kernel.go b/internal/rosa/kernel.go
index b221345c..3f4b8422 100644
--- a/internal/rosa/kernel.go
+++ b/internal/rosa/kernel.go
@@ -11,26 +11,26 @@ var kernelSource = newTar(
pkg.TarGzip,
)
-func (t Toolchain) newKernelSource() (pkg.Artifact, string) {
- return t.New("kernel-"+kernelVersion+"-src", 0, nil, nil, nil, `
+func (t Toolchain) newKernelSource(s *S) (pkg.Artifact, string) {
+ return s.New(t, "kernel-"+kernelVersion+"-src", 0, nil, nil, nil, `
mkdir -p /work/usr/src/
cp -r /usr/src/linux /work/usr/src/
chmod -R +w /work/usr/src/linux/
`, pkg.Path(AbsUsrSrc.Append("linux"), false, kernelSource)), kernelVersion
}
func init() {
- artifactsM[KernelSource] = Metadata{
+ native.MustRegister(&Artifact{
f: Toolchain.newKernelSource,
Name: "kernel-source",
Description: "a writable kernel source tree installed to /usr/src/linux",
Website: "https://kernel.org/",
- }
+ })
}
-func (t Toolchain) newKernelHeaders() (pkg.Artifact, string) {
+func (t Toolchain) newKernelHeaders(s *S) (pkg.Artifact, string) {
const checksum = "lCmBNcMeUmXifg0vecKOPy3GAaFcJSmOPnf3wit9xYTDSTsFADPt1xxUFfmTn1fD"
- return t.NewPackage("kernel-headers", kernelVersion, kernelSource, &PackageAttr{
+ return s.NewPackage(t, "kernel-headers", kernelVersion, kernelSource, &PackageAttr{
Flag: TEarly,
KnownChecksum: new(mustDecode(checksum)),
@@ -67,17 +67,17 @@ cat \
), kernelVersion
}
func init() {
- artifactsM[KernelHeaders] = Metadata{
+ native.MustRegister(&Artifact{
f: Toolchain.newKernelHeaders,
Name: "kernel-headers",
Description: "an installation of kernel headers",
Website: "https://kernel.org/",
- }
+ })
}
-func (t Toolchain) newKernel() (pkg.Artifact, string) {
- return t.NewPackage("kernel", kernelVersion, kernelSource, &PackageAttr{
+func (t Toolchain) newKernel(s *S) (pkg.Artifact, string) {
+ return s.NewPackage(t, "kernel", kernelVersion, kernelSource, &PackageAttr{
Env: []string{
"PATH=/system/sbin",
},
@@ -1272,7 +1272,7 @@ rm -v /work/system/lib/modules/` + kernelVersion + `/build
), kernelVersion
}
func init() {
- artifactsM[Kernel] = Metadata{
+ native.MustRegister(&Artifact{
f: Toolchain.newKernel,
Name: "kernel",
@@ -1280,30 +1280,30 @@ func init() {
Website: "https://kernel.org/",
ID: 375621,
- }
+ })
}
-func (t Toolchain) newGenInitCPIO() (pkg.Artifact, string) {
- return t.New("gen_init_cpio-"+kernelVersion, 0, nil, nil, nil, `
+func (t Toolchain) newGenInitCPIO(s *S) (pkg.Artifact, string) {
+ return s.New(t, "gen_init_cpio-"+kernelVersion, 0, nil, nil, nil, `
mkdir -p /work/system/bin/
cc -o /work/system/bin/gen_init_cpio /usr/src/linux/usr/gen_init_cpio.c
`, pkg.Path(AbsUsrSrc.Append("linux"), false, kernelSource)), kernelVersion
}
func init() {
- artifactsM[GenInitCPIO] = Metadata{
+ native.MustRegister(&Artifact{
f: Toolchain.newGenInitCPIO,
Name: "gen_init_cpio",
Description: "a program in the kernel source tree for creating initramfs archive",
- }
+ })
}
-func (t Toolchain) newFirmware() (pkg.Artifact, string) {
+func (t Toolchain) newFirmware(s *S) (pkg.Artifact, string) {
const (
version = "20260410"
checksum = "J8PdQlGqwrivpskPzbL6xacqR6mlKtXpe5RpzFfVzKPAgG81ZRXsc3qrxwdGJbil"
)
- return t.NewPackage("firmware", version, newFromGitLab(
+ return s.NewPackage(t, "firmware", version, newFromGitLab(
"gitlab.com",
"kernel-firmware/linux-firmware",
version,
@@ -1337,7 +1337,7 @@ func (t Toolchain) newFirmware() (pkg.Artifact, string) {
), version
}
func init() {
- artifactsM[Firmware] = Metadata{
+ native.MustRegister(&Artifact{
f: Toolchain.newFirmware,
Name: "firmware",
@@ -1345,5 +1345,5 @@ func init() {
Website: "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/",
ID: 141464,
- }
+ })
}