gnome onda 3: hojas de la cadena eds — nghttp2 (b3:5f35b06e) y libpsl (b3:824b4bb9)
Arranca la última frontera de gnome-shell: evolution-data-server. El comentario
de gnome-shell.toml estimaba ~10 recetas dominadas por icu, pero icu4c YA quedó
sellada por la campaña KDE (b3:dbda6797) y sólo depende de pkgconf+python3, o
sea del corpus padre ⇒ copiarla a incoming-gnome da hash IDÉNTICO y cero
rebuild (la resolución de deps es hermano→padre, nunca de reojo a otra cola).
Con icu ya pago, las dos hojas de libsoup salen a la primera:
nghttp2 1.64.0 b3:5f35b06e --enable-lib-only deja la frontera en CERO deps
nuevas; las apps arrastraban libev, libcares,
openssl, jansson y libevent.
libpsl 0.21.5 b3:824b4bb9 --enable-{runtime,builtin}=libicu, verificado por
NEEDED libicuuc.so.77 (no degradó a libpsl ciego).
Frontera restante de la cima: libsoup, libical, evolution-data-server.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -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"]
|
||||
@@ -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"]
|
||||
@@ -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"]
|
||||
Reference in New Issue
Block a user