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…

TOML 1182Shell 87Rust 63Markdown 541592 Definitions

⎇ 1c2c5a6db2f9bab4fc401aa6be819955a1d57bf2 recipes/fastfetch.toml TOML · 44 lines · 3.1 KB History raw

el TLS arreglado en la caja, la distro con nombre, y el ENOSPC que no era de la raíz 93362fc21 · Sergio ·

1# fastfetch — la tarjeta de presentación del sistema: qué distro, qué kernel, qué CPU, qué RAM.
2#
3# Pedido por el usuario (2026-09-14). No es adorno: en una distro propia es la primera herramienta
4# que contesta «¿qué estoy corriendo?» sin leerse tres ficheros de `/proc`, y en una caja recién
5# instalada es lo que distingue «arrancó» de «arrancó lo que yo creía».
6#
7# ══ CMake + zig: la línea que no se puede olvidar ══════════════════════════════════════════════
8# `-DCMAKE_LINK_DEPENDS_USE_LINKER=OFF`. Sin eso, el `lld` de zig **segfaultea** al recibir
9# `--dependency-file` y el error no menciona a zig ni a lld — dice `Error running link command:
10# Segmentation fault`. Cinco de las quince recetas CMake barridas estaban selladas Y rotas por esto.
11#
12# ══ LO QUE SE APAGA, Y POR QUÉ ═════════════════════════════════════════════════════════════════
13# fastfetch detecta MUCHO por `dlopen` de librerías opcionales (X11, Vulkan, DConf, ImageMagick…).
14# Con `link = "static"` eso no aplica: el binario no abre nada en runtime. Se apagan explícitamente
15# los módulos que traerían dependencias que esta distro no tiene —o que las tiene por otra vía— para
16# que el build no dependa de qué haya en el lab **el día que se construya**: una detección que entra
17# «porque estaba» es un artefacto distinto en cada máquina, con el mismo nombre.
18name    = "fastfetch"
19version = "2.68.1"
20license = "MIT"
21
22[source]
23repo   = "https://github.com/fastfetch-cli/fastfetch"
24commit = "1c1136ebd1e943d6d2ba7c204a11deee3e948dd8"
25
26[build]
27compiler = "zig-cc"
28target   = "x86_64-linux-musl"
29link     = "static"
30flags    = []
31
32[deps]
33build = ["cmake", "linux-headers"]
34
35[build.phases]
36# ⚠ `-Wno-error=date-time`: `version.c` usa `__DATE__`/`__TIME__` y el lab compila con
37# `-Werror=date-time` —la política de reproducibilidad del sandbox, que aquí hizo exactamente su
38# trabajo y paró el build—. Desactivarlo es SEGURO **porque el sandbox exporta `SOURCE_DATE_EPOCH`**:
39# con esa variable definida, clang hace que `__DATE__`/`__TIME__` rindan esa fecha fija en vez de la
40# del reloj, así que el binario sigue siendo determinista. Sin `SOURCE_DATE_EPOCH` esto sería
41# hornear la hora del build dentro del artefacto, que es justo lo que el warning previene.
42configure = "cmake -S . -B build -DCMAKE_C_FLAGS=-Wno-error=date-time -DCMAKE_LINK_DEPENDS_USE_LINKER=OFF -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF -DENABLE_SYSTEM_YYJSON=OFF -DENABLE_VULKAN=OFF -DENABLE_OPENCL=OFF -DENABLE_X11=OFF -DENABLE_XRANDR=OFF -DENABLE_WAYLAND=OFF -DENABLE_DCONF=OFF -DENABLE_IMAGEMAGICK7=OFF -DENABLE_CHAFA=OFF -DENABLE_DBUS=OFF -DENABLE_PULSE=OFF -DENABLE_DDCUTIL=OFF -DENABLE_SQLITE3=OFF -DENABLE_RPM=OFF -DENABLE_LIBNM=OFF -DENABLE_LIBZFS=OFF -DENABLE_EGL=OFF -DENABLE_GLX=OFF -DENABLE_OSMESA=OFF -DENABLE_DRM=OFF -DENABLE_ELF=OFF -DENABLE_LIBCJSON=OFF"
43compile   = "cmake --build build"
44install   = "DESTDIR=/out cmake --install build"