internal/rosa: create metadata alongside artifact

This enables deferring evaluation of azalea-based packages and fixes the longstanding quirk of version being disjoint from other metadata.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-05-19 00:03:42 +09:00
parent 0e95573f18
commit 8807cbc730
88 changed files with 612 additions and 874 deletions

View File

@@ -15,9 +15,7 @@ func (t Toolchain) newUtilMacros() (pkg.Artifact, string) {
), nil, (*MakeHelper)(nil)), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newUtilMacros,
native.mustRegister(Toolchain.newUtilMacros, &Metadata{
Name: "util-macros",
Description: "X.Org Autotools macros",
Website: "https://xorg.freedesktop.org/",
@@ -47,9 +45,7 @@ func (t Toolchain) newLibxtrans() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxtrans,
native.mustRegister(Toolchain.newLibxtrans, &Metadata{
Name: "libxtrans",
Description: "X Window System Protocols Transport layer shared code",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxtrans",
@@ -78,9 +74,7 @@ func (t Toolchain) newXorgProto() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXorgProto,
native.mustRegister(Toolchain.newXorgProto, &Metadata{
Name: "xorgproto",
Description: "X Window System unified protocol definitions",
Website: "https://gitlab.freedesktop.org/xorg/proto/xorgproto",
@@ -112,9 +106,7 @@ func (t Toolchain) newLibXau() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXau,
native.mustRegister(Toolchain.newLibXau, &Metadata{
Name: "libXau",
Description: "functions for handling Xauthority files and entries",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxau",
@@ -141,9 +133,7 @@ func (t Toolchain) newXCBProto() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXCBProto,
native.mustRegister(Toolchain.newXCBProto, &Metadata{
Name: "xcb-proto",
Description: "XML-XCB protocol descriptions used by libxcb for the X11 protocol & extensions",
Website: "https://gitlab.freedesktop.org/xorg/proto/xcbproto",
@@ -170,9 +160,7 @@ func (t Toolchain) newXCB() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXCB,
native.mustRegister(Toolchain.newXCB, &Metadata{
Name: "xcb",
Description: "The X protocol C-language Binding",
Website: "https://xcb.freedesktop.org/",
@@ -202,9 +190,7 @@ func (t Toolchain) newLibxcbUtilKeysyms() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcbUtilKeysyms,
native.mustRegister(Toolchain.newLibxcbUtilKeysyms, &Metadata{
Name: "libxcb-util-keysyms",
Description: "standard X key constants and conversion to/from keycodes",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcb-keysyms",
@@ -233,9 +219,7 @@ func (t Toolchain) newLibxcbUtilImage() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcbUtilImage,
native.mustRegister(Toolchain.newLibxcbUtilImage, &Metadata{
Name: "libxcb-util-image",
Description: "XCB port of Xlib's XImage and XShmImage functions",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcb-image",
@@ -265,9 +249,7 @@ func (t Toolchain) newLibxcbUtilWM() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcbUtilWM,
native.mustRegister(Toolchain.newLibxcbUtilWM, &Metadata{
Name: "libxcb-util-wm",
Description: "XCB client and window-manager helpers for ICCCM & EWMH",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcb-wm",
@@ -298,9 +280,7 @@ func (t Toolchain) newLibxcbUtil() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcbUtil,
native.mustRegister(Toolchain.newLibxcbUtil, &Metadata{
Name: "libxcb-util",
Description: "XCB utility libraries",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcb-util",
@@ -331,9 +311,7 @@ func (t Toolchain) newLibxcbRenderUtil() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcbRenderUtil,
native.mustRegister(Toolchain.newLibxcbRenderUtil, &Metadata{
Name: "libxcb-render-util",
Description: "XCB convenience functions for the Render extension",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcb-render-util",
@@ -375,9 +353,7 @@ func (t Toolchain) newLibX11() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibX11,
native.mustRegister(Toolchain.newLibX11, &Metadata{
Name: "libX11",
Description: `Core X11 protocol client library (aka "Xlib")`,
Website: "https://gitlab.freedesktop.org/xorg/lib/libx11",
@@ -412,9 +388,7 @@ func (t Toolchain) newLibXext() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXext,
native.mustRegister(Toolchain.newLibXext, &Metadata{
Name: "libXext",
Description: "Xlib-based library for common extensions to the X11 protocol",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxext",
@@ -450,9 +424,7 @@ func (t Toolchain) newLibXfixes() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXfixes,
native.mustRegister(Toolchain.newLibXfixes, &Metadata{
Name: "libXfixes",
Description: "Xlib-based library for the XFIXES Extension",
Website: "https://www.freedesktop.org/wiki/Software/FixesExt/",
@@ -487,9 +459,7 @@ func (t Toolchain) newLibXrender() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXrender,
native.mustRegister(Toolchain.newLibXrender, &Metadata{
Name: "libXrender",
Description: "Xlib library for the Render Extension to the X11 protocol",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxrender",
@@ -524,9 +494,7 @@ func (t Toolchain) newLibxshmfence() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxshmfence,
native.mustRegister(Toolchain.newLibxshmfence, &Metadata{
Name: "libxshmfence",
Description: "shared memory 'SyncFence' synchronization primitive",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxshmfence",
@@ -558,9 +526,7 @@ func (t Toolchain) newLibXxf86vm() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXxf86vm,
native.mustRegister(Toolchain.newLibXxf86vm, &Metadata{
Name: "libXxf86vm",
Description: "Xlib-based library for the XFree86-VidMode X extension",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxxf86vm",
@@ -597,9 +563,7 @@ func (t Toolchain) newLibXrandr() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXrandr,
native.mustRegister(Toolchain.newLibXrandr, &Metadata{
Name: "libXrandr",
Description: "Xlib Resize, Rotate and Reflection (RandR) extension library",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxrandr",
@@ -634,9 +598,7 @@ func (t Toolchain) newFontUtil() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newFontUtil,
native.mustRegister(Toolchain.newFontUtil, &Metadata{
Name: "font-util",
Description: "X.Org font package creation/installation utilities",
Website: "https://gitlab.freedesktop.org/xorg/font/util",
@@ -668,9 +630,7 @@ func (t Toolchain) newLibfontenc() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibfontenc,
native.mustRegister(Toolchain.newLibfontenc, &Metadata{
Name: "libfontenc",
Description: "X font encoding library",
Website: "https://gitlab.freedesktop.org/xorg/lib/libfontenc",
@@ -694,9 +654,7 @@ func (t Toolchain) newLibxkbfile() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxkbfile,
native.mustRegister(Toolchain.newLibxkbfile, &Metadata{
Name: "libxkbfile",
Description: "XKB file handling routines",
Website: "http://www.x.org/wiki/XKB",
@@ -732,9 +690,7 @@ func (t Toolchain) newXkbcomp() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXkbcomp,
native.mustRegister(Toolchain.newXkbcomp, &Metadata{
Name: "xkbcomp",
Description: "XKB keyboard description compiler",
Website: "http://www.x.org/wiki/XKB",
@@ -772,9 +728,7 @@ func (t Toolchain) newLibXfont2() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXfont2,
native.mustRegister(Toolchain.newLibXfont2, &Metadata{
Name: "libXfont2",
Description: "X font handling library for server & utilities",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxfont",
@@ -801,9 +755,7 @@ func (t Toolchain) newLibxcvt() (pkg.Artifact, string) {
), nil, (*MesonHelper)(nil)), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibxcvt,
native.mustRegister(Toolchain.newLibxcvt, &Metadata{
Name: "libxcvt",
Description: "VESA CVT standard timing modeline generation library & utility",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxcvt",
@@ -834,9 +786,7 @@ func (t Toolchain) newLibXdmcp() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibXdmcp,
native.mustRegister(Toolchain.newLibXdmcp, &Metadata{
Name: "libXdmcp",
Description: "X Display Manager Control Protocol library",
Website: "https://gitlab.freedesktop.org/xorg/lib/libxdmcp",
@@ -860,9 +810,7 @@ func (t Toolchain) newXkeyboardConfig() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXkeyboardConfig,
native.mustRegister(Toolchain.newXkeyboardConfig, &Metadata{
Name: "xkeyboard-config",
Description: "the non-arch keyboard configuration database for X Window",
Website: "https://www.freedesktop.org/wiki/Software/XKeyboardConfig/",
@@ -888,9 +836,7 @@ func (t Toolchain) newLibpciaccess() (pkg.Artifact, string) {
}), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newLibpciaccess,
native.mustRegister(Toolchain.newLibpciaccess, &Metadata{
Name: "libpciaccess",
Description: "generic PCI access library",
Website: "https://gitlab.freedesktop.org/xorg/lib/libpciaccess",
@@ -955,9 +901,7 @@ func (t Toolchain) newXserver() (pkg.Artifact, string) {
), version
}
func init() {
native.MustRegister(&Artifact{
f: Toolchain.newXserver,
native.mustRegister(Toolchain.newXserver, &Metadata{
Name: "xserver",
Description: "X server",
Website: "https://gitlab.freedesktop.org/xorg/xserver",