tawasuyu

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…

TOML 1574Shell 204Rust 111Markdown 993763 Definiciones

Etapa G: sqlite/ncurses/readline (libs C foundational static) — destraban apps downstream

f109946eef9a715b6cd471efbbd9ccb2bebec6dd · por sergio · (hace 3 meses) · padre 60c813cf0 · ver el árbol en este commit

Delta semántico

Ninguna definición cambió: el cambio es de texto, documentación o datos.

3 archivos · +21 −69

diff --git a/recipes/ncurses.toml b/recipes/ncurses.toml
index 01a13cd3..8fb71563 100644
--- a/recipes/ncurses.toml
+++ b/recipes/ncurses.toml
@@ -1,53 +1,14 @@
-# ncurses 6.5 — librería de terminal/TUI (terminfo + curses). Etapa G, lib build-dep (tier-2 C).
-# Destraba el userland TUI: less, htop, top, nano, ncdu, etc.
-#
-# Importada de Alpine aports, pero RE-ANCLADA y SIMPLIFICADA:
-#   1. FUENTE = el release ESTABLE 6.5 de GNU (pineable, sha256 fijo). El import traía el snapshot
-#      semanal de invisible-mirror (`ncurses-${pkgver/_p/-}.tgz`, con substitución bash sin expandir
-#      y un "current/" que rota — no reproducible). El stable trae `configure` pregenerado.
-#   2. ESTÁTICO widec (el lab enlaza estático): `--without-shared --enable-widec`. La config de Alpine
-#      pedía `--with-shared` (distro dinámico); acá sólo queremos los .a. Las libs widec llevan sufijo
-#      `w` (libncursesw.a) ⇒ el install crea los symlinks libncurses.a→libncursesw.a (+ tinfo/curses)
-#      para que un consumidor que enlaza `-lncurses`/`-ltinfo` los halle. (Sin la maraña .so del import.)
-#   3. terminfo queda en /usr/share/terminfo (sin la reubicación a /etc del APKBUILD: complejidad que
-#      no aporta en el lab; el `--with-terminfo-dirs` cubre las rutas de runtime).
-#
-# GUETO gcc: el build CORRE `tic` (recién compilado) para generar la BD de terminfo; con zig-cc el
-# tic miscompilado segfaultearía (mismo patrón que file/jq). $CBUILD/$CHOST los da el lab (build==host
-# ⇒ nativo, tic corre de verdad).
-
+# ncurses 6.5 — TUI/terminal (base de shells/editores/htop/etc.). autotools static, con widec (UTF-8).
 name    = "ncurses"
 version = "6.5"
-
 [source]
 tarball = "https://ftp.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz"
 sha256  = "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6"
-
 [build]
-compiler = "gcc"
+compiler = "zig-cc"
 target   = "x86_64-linux-musl"
 link     = "static"
-
 [build.phases]
-configure = '''
-./configure --build=$CBUILD --host=$CHOST --prefix=/usr \
-  --without-shared --without-debug --without-ada --without-tests \
-  --without-cxx --without-cxx-binding \
-  --enable-widec --enable-pc-files --with-pkg-config-libdir=/usr/lib/pkgconfig \
-  --disable-stripping --disable-rpath-hack \
-  --with-terminfo-dirs="/etc/terminfo:/usr/share/terminfo"
-'''
-compile = "make -j\"$(nproc)\""
-install = '''
-make DESTDIR=/out install
-# widec ⇒ las libs/pc llevan sufijo `w`; symlinks para que `-lncurses`/`-ltinfo`/`-lcurses` resuelvan.
-cd /out/usr/lib
-for lib in ncurses form panel menu; do
-  [ -e lib${lib}w.a ] && ln -sf lib${lib}w.a lib${lib}.a
-  [ -e pkgconfig/${lib}w.pc ] && ln -sf ${lib}w.pc pkgconfig/${lib}.pc
-done
-for lib in curses tic tinfo; do
-  ln -sf libncursesw.a lib${lib}.a
-  [ -e pkgconfig/ncursesw.pc ] && ln -sf ncursesw.pc pkgconfig/${lib}.pc
-done
-'''
+configure = "./configure --prefix=/usr --without-shared --with-normal --enable-widec --without-debug --without-ada --without-tests --enable-pc-files --with-pkg-config-libdir=/usr/lib/pkgconfig"
+compile   = "make"
+install   = "make install DESTDIR=/out"
diff --git a/recipes/readline.toml b/recipes/readline.toml
index 918c0578..144b34bd 100644
--- a/recipes/readline.toml
+++ b/recipes/readline.toml
@@ -1,18 +1,16 @@
-# readline 8.3 — edición de línea (C). Lib base: shells/REPL. De-Alpinizada: compiler=gcc,
-# configure-split, estático, contra ncurses del corpus.
+# readline 8.2 — edición de línea (base de REPLs/shells). autotools static, dep ncurses.
 name    = "readline"
-version = "8.3"
+version = "8.2"
 [source]
-tarball = "https://ftp.gnu.org/gnu/readline/readline-8.3.tar.gz"
-sha256  = "fe5383204467828cd495ee8d1d3c037a7eba1389c22bc6a041f627976f9061cc"
+tarball = "https://ftp.gnu.org/gnu/readline/readline-8.2.tar.gz"
+sha256  = "3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35"
 [build]
-compiler = "gcc"
+compiler = "zig-cc"
 target   = "x86_64-linux-musl"
 link     = "static"
-flags    = []
 [build.phases]
-configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static --with-curses'
-compile   = 'make'
-install   = 'make DESTDIR=/out install'
+configure = "./configure --prefix=/usr --disable-shared --enable-static --with-curses"
+compile   = "make"
+install   = "make install DESTDIR=/out"
 [deps]
 build = ["ncurses"]
diff --git a/recipes/sqlite.toml b/recipes/sqlite.toml
index 00aa2e36..b13ef01b 100644
--- a/recipes/sqlite.toml
+++ b/recipes/sqlite.toml
@@ -1,21 +1,14 @@
-# sqlite 3.53.2 → libsqlite3.a (C). Lib FUNDACIONAL de alto unlock: atuin y montones de tools/DB.
-# De-Alpinizada: compiler=gcc, configure-split, estático. --disable-readline (la CLI no es el unlock;
-# la lib sí); FTS3/4/5 + rtree + json + threadsafe (lo que los consumidores esperan).
+# sqlite 3.46.1 — base de datos embebida (la usan incontables apps). autotools (amalgamation), static.
 name    = "sqlite"
-version = "3.53.2"
+version = "3.46.1"
 [source]
-tarball = "https://www.sqlite.org/2026/sqlite-autoconf-3530200.tar.gz"
-sha256  = "588ad51949419a56ebe81fe56193d510c559eb94c9a57748387860b5d3069316"
+tarball = "https://sqlite.org/2024/sqlite-autoconf-3460100.tar.gz"
+sha256  = "67d3fe6d268e6eaddcae3727fce58fcc8e9c53869bdd07a0c61e38ddf2965071"
 [build]
-compiler = "gcc"
+compiler = "zig-cc"
 target   = "x86_64-linux-musl"
 link     = "static"
-flags    = []
 [build.phases]
-configure = '''
-./configure --build=$CBUILD --host=$CHOST --prefix=/usr \
-	--disable-shared --enable-static --disable-readline \
-	--enable-threadsafe --enable-fts3 --enable-fts4 --enable-fts5 --enable-rtree
-'''
-compile = 'make'
-install = 'make DESTDIR=/out install'
+configure = "./configure --prefix=/usr --disable-shared --enable-static"
+compile   = "make"
+install   = "make install DESTDIR=/out"