diff --git a/recipes/incoming-gnome/icu4c.toml b/recipes/incoming-gnome/icu4c.toml new file mode 100644 index 00000000..622ac029 --- /dev/null +++ b/recipes/incoming-gnome/icu4c.toml @@ -0,0 +1,26 @@ +# icu4c 77.1 — International Components for Unicode (libicuuc/libicui18n/libicudata.so). Dep transitiva +# del stack Qt/KDE (ki18n opcional, libqalculate opcional, apps con colación Unicode). C++ autotools; +# el tarball descomprime a `icu/source/` → todas las fases entran con `cd source`. musl, shared. +name = "icu4c" +version = "77.1" + +[source] +tarball = "https://github.com/unicode-org/icu/releases/download/release-77-1/icu4c-77_1-src.tgz" +sha256 = "588e431f77327c39031ffbb8843c0e3bc122c211374485fa87dc5f3faff24061" + +[build] +compiler = "zig-cc" +target = "x86_64-linux-musl" +link = "dynamic" +flags = [] + +[build.phases] +configure = ''' +cd source && ./configure --prefix=/usr --enable-shared --disable-static \ + --disable-samples --disable-tests +''' +compile = "cd source && make -j\"$(nproc)\"" +install = "cd source && make install DESTDIR=/out" + +[deps] +build = ["pkgconf", "python3"] diff --git a/recipes/incoming-gnome/libpsl.toml b/recipes/incoming-gnome/libpsl.toml new file mode 100644 index 00000000..81475480 --- /dev/null +++ b/recipes/incoming-gnome/libpsl.toml @@ -0,0 +1,35 @@ +# libpsl 0.21.5 — Public Suffix List. Dep dura de libsoup (cookie jar): decide si un dominio puede +# fijar cookie sobre otro, o sea que NO es adorno de features — es la frontera entre `.com` y +# `example.com` para el navegador y para cualquier cliente HTTP del escritorio. Entra por +# eds → libsoup → libpsl. +# +# La opción cara acá es de dónde sale el soporte IDN (dominios con acentos/no-ASCII). libpsl acepta +# libidn2, libicu o libidn. NINGUNA de las dos primeras estaba en el corpus cuando se planeó esta +# cadena, pero icu4c YA quedó sellada por la campaña KDE (b3:dbda6797) ⇒ se elige `libicu` y la +# frontera de libpsl es CERO recetas nuevas. Con `--enable-runtime=no` habría compilado igual, pero +# dejando un libpsl ciego a los dominios internacionales; no vale la pena cuando el ICU ya está pago. +# +# `--enable-builtin=libicu` hornea la lista del tarball en el .so (psl-make-dafsa, python3) para que +# no haga falta un fichero de datos en runtime: un artefacto autocontenido, que es lo que quiere el +# store direccionable por contenido. La lista queda fijada al tarball ⇒ entra al ArtifactHash. +# +# ISLA DINÁMICA: shared, igual que el resto de la onda 3. +name = "libpsl" +version = "0.21.5" + +[source] +tarball = "https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz" +sha256 = "1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208" + +[build] +compiler = "zig-cc" +target = "x86_64-linux-musl" +link = "dynamic" + +[build.phases] +configure = "PKG_CONFIG_PATH=/usr/lib/pkgconfig ./configure --prefix=/usr --enable-shared --disable-static --enable-runtime=libicu --enable-builtin=libicu --disable-gtk-doc --disable-man" +compile = "make -j\"$(nproc)\"" +install = "make install DESTDIR=/out" + +[deps] +build = ["pkgconf", "python3", "icu4c"] diff --git a/recipes/incoming-gnome/nghttp2.toml b/recipes/incoming-gnome/nghttp2.toml new file mode 100644 index 00000000..f749b3b5 --- /dev/null +++ b/recipes/incoming-gnome/nghttp2.toml @@ -0,0 +1,29 @@ +# nghttp2 1.64.0 — HTTP/2 en C. Entra al frente GNOME por debajo de libsoup: soup 3.x usa +# libnghttp2 para HTTP/2 y libnghttp2 para el (opcional) HTTP/3, y sin ella el meson de soup +# corta. No la pide el escritorio directamente: es dep transitiva de la cima (eds → libsoup). +# +# --enable-lib-only es la clave del costo: nghttp2 trae ADEMÁS un set de aplicaciones (nghttp, +# nghttpd, nghttpx, h2load) que arrastran libev, libcares, openssl, jansson y libevent — cinco +# recetas que NO hay que autorar. Lo que libsoup enlaza es sólo `libnghttp2.so`, así que +# apagando las apps la frontera de nghttp2 queda en CERO deps nuevas: pkgconf y nada más. +# +# ISLA DINÁMICA: shared, porque libsoup y todo el stack GNOME de esta onda son .so. +name = "nghttp2" +version = "1.64.0" + +[source] +tarball = "https://github.com/nghttp2/nghttp2/releases/download/v1.64.0/nghttp2-1.64.0.tar.xz" +sha256 = "88bb94c9e4fd1c499967f83dece36a78122af7d5fb40da2019c56b9ccc6eb9dd" + +[build] +compiler = "zig-cc" +target = "x86_64-linux-musl" +link = "dynamic" + +[build.phases] +configure = "./configure --prefix=/usr --enable-lib-only --enable-shared --disable-static --disable-python-bindings --disable-examples" +compile = "make -j\"$(nproc)\"" +install = "make install DESTDIR=/out" + +[deps] +build = ["pkgconf"]