From 504f5d28fe96f481b13049b1aaaba2f87e8b0d86 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Mon, 26 Jan 2026 05:28:36 +0900 Subject: [PATCH] internal/rosa: libseccomp artifact Required by hakurei. Signed-off-by: Ophestra --- cmd/mbf/main.go | 2 ++ internal/rosa/all.go | 1 + internal/rosa/libseccomp.go | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 internal/rosa/libseccomp.go diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go index c72cc0e..04082eb 100644 --- a/cmd/mbf/main.go +++ b/cmd/mbf/main.go @@ -172,6 +172,8 @@ func main() { p = rosa.KernelHeaders case "libexpat": p = rosa.Libexpat + case "libseccomp": + p = rosa.Libseccomp case "libxml2": p = rosa.Libxml2 case "libffi": diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 7bfd9df..babd61d 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -24,6 +24,7 @@ const ( Libexpat Libffi Libgd + Libseccomp Libxml2 M4 Make diff --git a/internal/rosa/libseccomp.go b/internal/rosa/libseccomp.go new file mode 100644 index 0000000..830af26 --- /dev/null +++ b/internal/rosa/libseccomp.go @@ -0,0 +1,35 @@ +package rosa + +import ( + "hakurei.app/internal/pkg" +) + +func (t Toolchain) newLibseccomp() pkg.Artifact { + const ( + version = "2.6.0" + checksum = "mMu-iR71guPjFbb31u-YexBaanKE_nYPjPux-vuBiPfS_0kbwJdfCGlkofaUm-EY" + ) + return t.New("libseccomp-"+version, []pkg.Artifact{ + t.Load(Make), + t.Load(Bash), + t.Load(Gperf), + + t.Load(KernelHeaders), + }, nil, nil, ` +ln -s ../system/bin/bash /bin/bash + +cd "$(mktemp -d)" +/usr/src/libseccomp/configure \ + --prefix=/system \ + --build="${ROSA_TRIPLE}" +make "-j$(nproc)" check +make DESTDIR=/work install +`, pkg.Path(AbsUsrSrc.Append("libseccomp"), false, pkg.NewHTTPGetTar( + nil, + "https://github.com/seccomp/libseccomp/releases/download/"+ + "v"+version+"/libseccomp-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ))) +} +func init() { artifactsF[Libseccomp] = Toolchain.newLibseccomp }