diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-01-27 02:02:49 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-01-27 02:02:49 +0900 |
| commit | c84fe632170301d417b58205d346e8fa15744fae (patch) | |
| tree | 3f584d51054bbb832204863efb8383e906b770fe /internal/rosa/xcb.go | |
| parent | eb67e5e0a8821058fed782bf9c90b45c793036a5 (diff) | |
internal/rosa: various X artifacts
Required by xcb which is required by hakurei.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/xcb.go')
| -rw-r--r-- | internal/rosa/xcb.go | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/internal/rosa/xcb.go b/internal/rosa/xcb.go new file mode 100644 index 00000000..58863567 --- /dev/null +++ b/internal/rosa/xcb.go @@ -0,0 +1,56 @@ +package rosa + +import "hakurei.app/internal/pkg" + +func (t Toolchain) newXCBProto() pkg.Artifact { + const ( + version = "1.17.0" + checksum = "_NtbKaJ_iyT7XiJz25mXQ7y-niTzE8sHPvLXZPcqtNoV_-vTzqkezJ8Hp2U1enCv" + ) + return t.New("xcb-proto-"+version, false, []pkg.Artifact{ + t.Load(Make), + t.Load(Python), + }, nil, nil, ` +cd "$(mktemp -d)" +/usr/src/xcb-proto/configure \ + --prefix=/system \ + --build="${ROSA_TRIPLE}" \ + --enable-static +make "-j$(nproc)" check +make DESTDIR=/work install +`, pkg.Path(AbsUsrSrc.Append("xcb-proto"), true, pkg.NewHTTPGetTar( + nil, "https://xcb.freedesktop.org/dist/xcb-proto-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ))) +} +func init() { artifactsF[XCBProto] = Toolchain.newXCBProto } + +func (t Toolchain) newXCB() pkg.Artifact { + const ( + version = "1.17.0" + checksum = "hjjsc79LpWM_hZjNWbDDS6qRQUXREjjekS6UbUsDq-RR1_AjgNDxhRvZf-1_kzDd" + ) + return t.New("xcb-"+version, false, []pkg.Artifact{ + t.Load(Make), + t.Load(Python), + t.Load(PkgConfig), + + t.Load(XCBProto), + t.Load(Xproto), + t.Load(LibXau), + }, nil, nil, ` +cd "$(mktemp -d)" +/usr/src/xcb/configure \ + --prefix=/system \ + --build="${ROSA_TRIPLE}" \ + --enable-static +make "-j$(nproc)" check +make DESTDIR=/work install +`, pkg.Path(AbsUsrSrc.Append("xcb"), true, pkg.NewHTTPGetTar( + nil, "https://xcb.freedesktop.org/dist/libxcb-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ))) +} +func init() { artifactsF[XCB] = Toolchain.newXCB } |
