internal/rosa: various X artifacts
All checks were successful
Test / Create distribution (push) Successful in 49s
Test / Sandbox (push) Successful in 2m37s
Test / Hakurei (push) Successful in 3m48s
Test / ShareFS (push) Successful in 3m57s
Test / Hpkg (push) Successful in 4m25s
Test / Sandbox (race detector) (push) Successful in 5m4s
Test / Hakurei (race detector) (push) Successful in 6m8s
Test / Flake checks (push) Successful in 1m44s

Required by xcb which is required by hakurei.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-01-27 02:02:49 +09:00
parent eb67e5e0a8
commit c84fe63217
5 changed files with 122 additions and 1 deletions

View File

@@ -23,6 +23,7 @@ const (
Go
Gperf
KernelHeaders
LibXau
Libexpat
Libffi
Libgd
@@ -40,6 +41,9 @@ const (
Setuptools
Wayland
WaylandProtocols
XCB
XCBProto
Xproto
Zlib
// _presetEnd is the total number of presets and does not denote a preset.

View File

@@ -19,7 +19,8 @@ mkdir /dev/shm/gd
cd "$(mktemp -d)"
/usr/src/libgd/configure \
--prefix=/system \
--build="${ROSA_TRIPLE}"
--build="${ROSA_TRIPLE}" \
--enable-static
make "-j$(nproc)" check
make DESTDIR=/work install
`, pkg.Path(AbsUsrSrc.Append("libgd"), true, pkg.NewHTTPGetTar(

52
internal/rosa/x.go Normal file
View File

@@ -0,0 +1,52 @@
package rosa
import "hakurei.app/internal/pkg"
func (t Toolchain) newXproto() pkg.Artifact {
const (
version = "7.0.23"
checksum = "goxwWxV0jZ_3pNczXFltZWHAhq92x-aEreUGyp5Ns8dBOoOmgbpeNIu1nv0Zx07z"
)
return t.New("xproto-"+version, false, []pkg.Artifact{
t.Load(Make),
t.Load(PkgConfig),
}, nil, nil, `
cd "$(mktemp -d)"
/usr/src/xproto/configure \
--prefix=/system \
--enable-static
make "-j$(nproc)" check
make DESTDIR=/work install
`, pkg.Path(AbsUsrSrc.Append("xproto"), true, pkg.NewHTTPGetTar(
nil, "https://www.x.org/releases/X11R7.7/src/proto/xproto-"+version+".tar.bz2",
mustDecode(checksum),
pkg.TarBzip2,
)))
}
func init() { artifactsF[Xproto] = Toolchain.newXproto }
func (t Toolchain) newLibXau() pkg.Artifact {
const (
version = "1.0.7"
checksum = "bm768RoZZnHRe9VjNU1Dw3BhfE60DyS9D_bgSR-JLkEEyUWT_Hb_lQripxrXto8j"
)
return t.New("libXau-"+version, false, []pkg.Artifact{
t.Load(Make),
t.Load(PkgConfig),
t.Load(Xproto),
}, nil, nil, `
cd "$(mktemp -d)"
/usr/src/libXau/configure \
--prefix=/system \
--enable-static
make "-j$(nproc)" check
make DESTDIR=/work install
`, pkg.Path(AbsUsrSrc.Append("libXau"), true, pkg.NewHTTPGetTar(
nil, "https://www.x.org/releases/X11R7.7/src/lib/"+
"libXau-"+version+".tar.bz2",
mustDecode(checksum),
pkg.TarBzip2,
)))
}
func init() { artifactsF[LibXau] = Toolchain.newLibXau }

56
internal/rosa/xcb.go Normal file
View File

@@ -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 }