gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

⎇ main recipes/iso-codes.toml TOML · 38 líneas · 2.3 KB Historia crudo

promoción: extra-cmake-modules e iso-codes al corpus — y es gratis, medido b14248488 · Sergio ·

1# iso-codes 4.20.1 — las listas ISO (639 idiomas, 3166 países, 4217 monedas, 15924 escrituras) como
2# datos + `iso-codes.pc`. Frontera declarada en el comentario de gnome-desktop: GnomeLanguage lee el
3# prefix de este .pc por pkg-config para encontrar los JSON. Paquete de DATOS: no compila nada.
4#
5# OJO FUENTE: iso-codes YA NO está en download.gnome.org (404 — el proyecto se mudó a Salsa/Debian).
6# Salsa es GitLab y sus `-/archive/<tag>.tar.gz` NO son deterministas (mismo tag, bytes distintos: la
7# lección que ya costó un sha256 en cairo-shared, commit 259f9ef). El `.orig.tar.xz` del pool de
8# Debian sí es un tarball inmutable subido una vez ⇒ es la fuente correcta para un build sellado.
9# sha256 REAL de `curl -sL <url> | sha256sum`.
10#
11# Feature-minimal SIN TRADUCCIONES: cada subdirectorio de dominio hace `i18n.gettext(domain)`, que
12# exige msgfmt sobre ~200 .po por dominio; el corpus sólo tiene gettext-tiny (msgfmt limitado) y
13# meson no ofrece opción para saltarlo. Vaciamos los 8 meson.build de dominio en configure —
14# `subdir()` sólo necesita que el fichero EXISTA. Queda lo que el escritorio necesita para construir:
15# los JSON, los .xml derivados y el .pc. Coste real: los nombres de idioma/país salen en inglés en
16# vez de traducidos (GnomeLanguage degrada, no falla). Si algún día hay gettext completo en el
17# corpus, se borra el `for` del configure y vuelven los .mo.
18name    = "iso-codes"
19version = "4.20.1"
20license = "LGPL-2.1-or-later"
21
22[source]
23tarball = "http://deb.debian.org/debian/pool/main/i/iso-codes/iso-codes_4.20.1.orig.tar.xz"
24sha256  = "5d551f3ddb32548c4321e9011720fd97751af0107592f79ebffc939bd32f2268"
25
26[build]
27compiler = "zig-cc"
28target   = "x86_64-linux-musl"
29link     = "static"
30
31[build.phases]
32configure = 'for d in iso_15924 iso_3166-1 iso_3166-2 iso_3166-3 iso_4217 iso_639-2 iso_639-3 iso_639-5; do : > "$d/meson.build"; done && PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload'
33compile   = 'PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output'
34install   = 'PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild'
35
36# python3: los custom_target del .xml corren scripts/xml_from_json.py. No hay dep de C: es data.
37[deps]
38build = ["meson", "samurai", "python3", "pkgconf"]