Files
hakurei/internal/rosa/xcb.go
Ophestra c84fe63217 internal/rosa: various X artifacts
Required by xcb which is required by hakurei.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-27 02:02:49 +09:00

57 lines
1.4 KiB
Go

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 }