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…
⎇ 2907e74a8f41b07296102c14adc378cea53f57f9
recipes/incoming-gnome/libspelling.toml
Ñawpa willay
ch'uya
la cadena del corrector: cinco muros, y el gordo es de libtool con zig
1# libspelling 0.4.10 — el corrector ortográfico COMO WIDGET: subrayado rojo mientras se escribe,
2# menú de sugerencias y elección de idioma, integrado en un `GtkSourceView`. Es dep DURA de
3# `gnome-text-editor` (`meson.build:50`, `dependency('libspelling-1')`, sin perilla).
4#
5# ── `-Denchant=enabled` NO ES EL DEFAULT POR CASUALIDAD, Y ES LA DECISIÓN DE ESTA RECETA ───────
6# El default ya viene `enabled`, pero se declara porque es una `feature` y la diferencia entre
7# declararlo y no hacerlo es el sistema entero: `lib/meson.build:44-45` sólo entra al subdirectorio
8# `enchant/` si la opción está `enabled()` —no `auto`, `enabled`— y `meson.build:20` define
9# `HAVE_ENCHANT` con lo mismo. Sin él, `spelling-provider.c` (`:28` y `:155`) se compila con un
10# **proveedor vacío** (`spelling-empty-provider.c`, que existe y es exactamente eso).
11#
12# ⇒ Con enchant apagado, libspelling CONSTRUYE, SELLA y no corrige nada: cero idiomas, cero
13# sugerencias, cero subrayados. Y `gnome-text-editor` seguiría mostrando su preferencia
14# «spellcheck» (`editor-preferences-dialog.ui:112`), que el usuario puede encender sin efecto.
15# Es la papelera dibujada de nautilus otra vez, en otro sitio. Por eso esta cola trae la cadena
16# completa —`hunspell` + `hunspell-en` + `enchant`— en vez de la mitad barata.
17#
18# ── LAS OTRAS PERILLAS ────────────────────────────────────────────────────────────────────────
19# -Dsysprof=false (default TRUE) → `sysprof-capture-4`, la librería de trazas del perfilador de
20# GNOME. No está en el catálogo y lo único que aporta son marcas de tiempo para
21# un perfilador que tampoco está.
22# -Dintrospection=disabled / -Dvapi=false / -Ddocs=false → typelib, Vala y gi-docgen. El consumidor
23# de hoy (gnome-text-editor) es C. ⚠ `vapi` depende de `introspection`: apagar
24# una sin la otra es el assert que costó una corrida en vte.
25# -Dinstall-static=false → ya es el default; toda la cola es la isla dinámica.
26#
27# ⚠ `icu4c` en las deps NO viene de enchant ni de gtk: lo pide el propio proveedor de libspelling,
28# `lib/enchant/meson.build:2` ⇒ `dependency('icu-uc')`. Lo usa para partir el texto en palabras de
29# verdad (`ubrk_*`, el iterador de límites de Unicode) en vez de por espacios, que es lo que hace
30# que subrayar funcione en un idioma que no sea inglés. Costó una corrida: el error nombra
31# `icu-uc`, no `libspelling`, y la tentación es buscarlo en el cierre de gtk4.
32#
33# ⚠ SIN `sed` del `ar`: su `po/ar.po` trae CERO `msgstr[5]` (medido).
34name = "libspelling"
35version = "0.4.10"
36license = "LGPL-2.1-or-later"
37
38[source]
39tarball = "https://download.gnome.org/sources/libspelling/0.4/libspelling-0.4.10.tar.xz"
40sha256 = "56e3f01a3a18b575beea4c34349f99cdaba316e1f7c271b1231f7bcf5d9af73b"
41
42[build]
43compiler = "zig-cc"
44target = "x86_64-linux-musl"
45link = "dynamic"
46
47[build.phases]
48configure = "PKG_CONFIG_PATH=/usr/lib/pkgconfig PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload -Ddefault_library=shared -Denchant=enabled -Dsysprof=false -Dintrospection=disabled -Dvapi=false -Ddocs=false -Dinstall-static=false -Dc_args=-Wno-error=date-time"
49compile = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
50install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"
51
52[deps]
53build = ["meson", "samurai", "python3", "pkgconf", "gettext-tiny", "glib", "gtk4", "gtksourceview", "enchant", "hunspell", "icu4c", "pango", "cairo-shared", "gdk-pixbuf", "graphene", "libepoxy", "wayland", "wayland-protocols", "libxkbcommon", "libdrm", "mesa", "fontconfig-shared", "freetype-shared", "harfbuzz", "fribidi", "pixman", "libpng-shared", "expat", "libjpeg-turbo-shared", "libtiff-shared", "libxml2-shared", "pcre2", "libffi", "zlib-shared"]