Commit Graph
411 Commits
Author SHA1 Message Date
sergioandClaude Opus 4.8 34697bb34a Etapa G (GUI): 🎉 libadwaita 1.7.6 ✓ — widgets modernos GNOME (Adwaita) sobre GTK4, static-musl
libadwaita-1.a archive GORDO (meson library() normal, sin el split de GTK) + libadwaita-1.pc + adwaita.h.
Cierra el stack GUI de alto nivel del lab: ya se pueden construir apps Adwaita.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 12:59:00 -04:00
sergioandClaude Opus 4.8 ec68fbe6f3 Etapa G (GUI): cadena de soporte de libadwaita — libsass/sassc (C++), libyaml, curl(min), libxmlb, gettext-tiny, itstool(stub), appstream(lean)
appstream 1.0.5 lean (compose/svg/stemming/gir/systemd off) destrabado con: gettext-tiny (msgfmt
p/ i18n de meson), itstool stub (copia el join-source, sin traducciones), curl mínimo (sin TLS, solo
satisface el link), libxmlb+libyaml, y sed que elimina subdir('docs/') incondicional (xsltproc+docbook).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 12:56:44 -04:00
sergioandClaude Opus 4.8 dfdddf062a Etapa G (GUI): libsass 3.6.6 + sassc 3.6.2 (C++ vía zig c++) — compilador SCSS para los estilos de libadwaita
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 12:28:23 -04:00
sergioandClaude Opus 4.8 82dfbcebfe Etapa G (GUI): validación — gtk4-hello, app GTK4 linkeada 100% estática contra libgtk-4.a
- gtk4.toml: el merge ahora fusiona TODOS los convenience-libs bajo output/ (gtk/css, gdk/wayland,
  cursor, gsk…), no solo gtk/gdk/gsk — el .a queda monolítico y autocontenido.
- gtk4-hello.toml: hello.c propio (GtkApplication+ventana), link estático vía pkg-config --static gtk4
  + privadas de gdk/gsk que gtk4.pc no declara (harfbuzz-subset/epoxy/xkbcommon/wayland/tiff/jpeg/
  cairo-script-interpreter). Binario: 134MB, ELF 'not a dynamic executable', corre (exit 0).

Prueba de que el toolkit de GUI del lab es USABLE por apps reales, no solo que compila.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 10:52:48 -04:00
sergioandClaude Opus 4.8 6ccd1c3846 Etapa G (GUI): 🎉 GTK4 4.18.6 ✓ — el toolkit de GUI completo, static-musl/zig-cc
Backend solo wayland (GL renderer vía libepoxy, vulkan off), todo lo opcional off.
Cierre .pc transitivo completo (24 deps). Parches: tools→libgtk_static_dep (la .so no
linkea con -static); instala libgtk-4.a además de la .so (apps static-musl). Corona el
stack gráfico C: glib/cairo/pango/gdk-pixbuf/graphene/libepoxy/wayland/mesa/harfbuzz/…

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 10:22:05 -04:00
sergioandClaude Opus 4.8 71e0769968 Etapa G (GUI): harfbuzz glib=enabled (hb-glib.h p/ GTK4) + cierre .pc transitivo (glib/pcre2/libffi/zlib) + PKG_CONFIG_PATH
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 10:06:26 -04:00
sergioandClaude Opus 4.8 6d7ab24fea Etapa G (GUI): libjpeg-turbo instala en /usr/lib (no lib64) — destraba pkg-config de libtiff→libjpeg y GTK4
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 09:56:02 -04:00
sergioandClaude Opus 4.8 a1b88d1735 Etapa G (GUI): libtiff ✓ — loader TIFF que gdk de GTK4 exige hard; cmake static, solo target tiff (esquiva helper mkg3states shared)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 09:51:49 -04:00
sergioandClaude Opus 4.8 c1a7370e6d Etapa G (GUI): gdk-pixbuf ✓ — esquiva shared-mime-info/glycin (gio_sniffing=false + builtin_loaders=png); último eslabón de deps GTK4
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 09:46:08 -04:00
sergio 61e1b7fe5c Etapa G: libepoxy recuperado — dep mesa (provee headers EGL/GL); mesa SÍ está en el repo 2026-06-30 07:54:45 -04:00
sergio ee3481b693 Etapa G: ncurses fallbacks built-in + install solo libs/includes (el tic de la DB terminfo es patológicamente lento) 2026-06-30 06:50:16 -04:00
sergio f109946eef Etapa G: sqlite/ncurses/readline (libs C foundational static) — destraban apps downstream 2026-06-30 06:10:56 -04:00
sergio 60c813cf06 Etapa G: zstd ✓ (Makefile no-asm); difiere gdk-pixbuf/libepoxy/gettext (bloqueados: shared-mime-info/mesa-EGL/gettext-roto) 2026-06-30 05:02:40 -04:00
sergio 223e614e95 Etapa G: zstd vía Makefile ZSTD_NO_ASM=1 (zig rechaza el .S de huf_decompress) 2026-06-30 05:01:30 -04:00
sergio c500470dbe Etapa G: libjpeg-turbo/zstd (cmake static) + lz4 (make static) — leaves imagen/compresión 2026-06-30 04:40:07 -04:00
sergio 5e68c03d94 Etapa G: libepoxy URL al github archive (la de releases daba 404) 2026-06-30 04:37:26 -04:00
sergio 87cc683765 Etapa G: graphene/libepoxy/libxkbcommon limpias (deps GTK4, meson static) 2026-06-30 04:31:40 -04:00
sergio 1db3ef0a5c Etapa G: gdk-pixbuf limpia (meson static, PNG, cierre transitivo) — carga de imágenes GUI 2026-06-30 00:42:32 -04:00
sergio 8335457e84 Etapa G: stack texto/2D+glib COMPLETO (16 libs C static) — base GTK/GUI + patrones de-Alpinización en memoria 2026-06-30 00:41:49 -04:00
sergio d40caecd4c Etapa G: pango cierre transitivo de .pc + c_args date-time 2026-06-30 00:40:38 -04:00
sergio d1134dc4bd Etapa G: cairo -Dc_args=-Wno-error=date-time (util cairo-script usa __DATE__) 2026-06-30 00:39:40 -04:00
sergio 01a58f253c Etapa G: cairo deps libffi+pcre2 (glib.pc Requires.private; pkg-config static transitivo) 2026-06-30 00:38:27 -04:00
sergio 91c708f8a5 Etapa G: cairo dep expat (fontconfig.pc Requires.private expat; pkg-config static lo exige) 2026-06-30 00:37:46 -04:00
sergio 6117ccd6e5 Etapa G: cairo/pango --wrap-mode=nodownload + PKG_CONFIG_PATH (usar deps del sistema, no bajar subproyectos) 2026-06-30 00:36:50 -04:00
sergio 97af53d737 Etapa G: cairo + pango limpias (meson static --prefer-static) — capstone texto/2D GUI 2026-06-30 00:29:57 -04:00
sergio 2c23b1a0b4 Etapa G: fontconfig dep python3 (su configure lo exige) 2026-06-30 00:28:05 -04:00
sergio fcd36fc2fc Etapa G: gperf -std=c++14 (3.1 usa 'register', prohibido en C++17) 2026-06-30 00:23:41 -04:00
sergio 205302afbb Etapa G: gperf (build-tool fontconfig) + glib --prefer-static (linkea .a no .so del base Alpine) 2026-06-30 00:17:24 -04:00
sergio f40af6718f Etapa G: expat/libxml2/fontconfig/glib limpias (static, sha256 computados, nls off en glib) 2026-06-30 00:10:04 -04:00
sergio dc5fd6701c Etapa G: pcre2/libpng/harfbuzz reescritas limpias (static, bottom-up GUI) 2026-06-30 00:00:10 -04:00
sergio 7c3ffef8eb Etapa G: nota frontera C/GUI (bases freetype/pixman/fribidi static + patrones de-Alpinización) 2026-06-29 23:31:35 -04:00
sergio 6e28cd9566 Etapa G: freetype/pixman/fribidi reescritas LIMPIAS (meson static mínimo, sin abuild) — bases GUI 2026-06-29 23:26:35 -04:00
sergio b32f3a0174 Etapa G: libs C autotools (expat/pcre2/libffi/libpng/fontconfig/gettext) a static (--disable-shared --enable-static) 2026-06-29 23:11:42 -04:00
sergio 1138c8981f Etapa G: zlib static (sin --shared, make libz.a) — lab static-musl rechaza el test shared 2026-06-29 23:09:46 -04:00
sergio 031535823f Etapa G: siembra 24 libs C de toolkit en incoming-clib (zlib/freetype/fontconfig/harfbuzz/cairo/pango/glib/...) — llenador de horas + ladrillos GUI 2026-06-29 23:02:57 -04:00
sergio 27fb9d4812 Etapa G: worker muele 3ª cola recipes/incoming-clib (libs C toolkit; el cron-go la ignora) 2026-06-29 22:56:01 -04:00
sergio de3ab6e427 Etapa G: cosecha-go finde (auto) — promovidos: gh-ost git-chglog gopass hostctl lefthook svu | review: temporal-cli(bin=gen-commands) 2026-06-29 22:52:37 -04:00
sergio 199ce9b9dd Etapa G: harvest lock STALE-AWARE (PID; roba si el dueño murió) — un lock huérfano bloqueó el cron 16h
+ dolt: corregido, necesita ICU4C (go-icu-regex), no oniguruma. oniguruma queda en el corpus (útil p/ otros regex).
2026-06-29 22:52:24 -04:00
sergio 15690d72c6 Etapa G: dolt full (subdir=go + cgo=true + oniguruma) — destrabado el regex cgo-externa 2026-06-29 15:58:07 -04:00
sergio 3f9121798f Etapa G: fetch extrae tarballs con tar --no-same-owner (fix de clase)
Como root (granja), tar preservaba el uid del tarball → el sandbox (userns) no podía chmod/escribir
esos ficheros → configure autotools fallaba (oniguruma: Permission denied creando Makefile). Extraer
como root sin preservar owner lo arregla para TODO tarball. oniguruma vuelve a configure plano.
2026-06-29 15:54:46 -04:00
sergio 533ed500c7 Etapa G: oniguruma — chmod -R u+w antes de configure (tarball extrae src/ sin escritura) 2026-06-29 15:49:27 -04:00
sergio 87016ad173 Etapa G: receta oniguruma 6.9.10 (lib C regex, autotools) — prerequisito cgo p/ dolt y jq-likes 2026-06-29 15:46:10 -04:00
sergio b249cda7a1 Etapa G: gocryptfs PROMOVIDO con openssl (cgo-lib-externa validado: libcrypto linkeado vía overlay+pkg-config, estático) 2026-06-29 15:43:44 -04:00
sergio 6e5dc54686 Etapa G: gocryptfs cgo+openssl (caso cgo-lib-externa: linkea libcrypto vía pkg-config) 2026-06-29 15:38:23 -04:00
sergio dfaca62f03 Etapa G: csvtk PROMOVIDO (v0.33.0; nota 'subdir' era vieja, go.mod en raíz) + dolt subdir=go validado (queda por cgo+oniguruma externa) 2026-06-29 15:14:10 -04:00
sergio c583c4d679 Etapa G: frontera go.mod-en-subdir — knob [build] subdir (vendor/detect/compile en src/<subdir>)
Destraba proyectos Go cuyo módulo no está en la raíz (dolt→go, csvtk→subdir): vendor_go_deps corre en
el subdir, detect_build_system/detect_go_main operan ahí, y el compile hace 'cd <subdir>' primero.
Test go_subdir_compiles_in_subdir.
2026-06-29 15:06:35 -04:00
sergio 49ce5cf051 Etapa G: granja — siembra +8 Go (gopass/lefthook/gh-ost/gocryptfs/temporal-cli/svu/git-chglog/hostctl)
flyctl no en nixpkgs; viddy dropeado (es Rust ahora, no Go). gocryptfs puede pedir CGO+openssl externa.
2026-06-29 14:56:18 -04:00
sergio b01d133994 Handoff → agente tawasuyu: tareas mesa-nouveau/NVK + firmware GSP + USB live para el tester NVIDIA
El kernel linux-generic 7.1.2 (b3:fded43c0…, nouveau KMS) está listo en el store. Faltan, de su frente:
mesa con nouveau/NVK (la actual es iris-only), firmware nouveau GSP en /lib/firmware, y el armado del
USB. mirada en NVIDIA necesita los tres además del kernel.
2026-06-29 14:49:58 -04:00
sergio 89c94e4435 Etapa G: linux-generic — excluye amd/ del Makefile drm (sledgehammer; amdgpu ICE en 7.1+gcc gueto)
syncconfig re-activaba amdgpu pese a kconfig -d (DRM_AMD_DC default-y), y amdgpu_userq_fence.c hace
ICE sin mensaje con el gcc del gueto. Borro las líneas obj-$(CONFIG_DRM_AMDGPU)+= amd/ del Makefile
del drm: amd nunca se compila, garantizado. i915+radeon+nouveau intactos. amdgpu (AMD moderno) = v2.
2026-06-29 13:04:34 -04:00
sergio 348b5ebe42 Etapa G: linux-generic — patrón probado (bzImage directo, amdgpu+DC+HSA off en config principal)
Revierte el make-prepare separado (disparaba syncconfig que re-activaba amdgpu). Como linux-metal:
-d DRM_AMDGPU -d DRM_AMD_DC -d HSA_AMD antes de olddefconfig + bzImage directo. Single clean build.
2026-06-29 12:52:58 -04:00