diff --git a/recipes/htop.toml b/recipes/htop.toml new file mode 100644 index 00000000..038a5757 --- /dev/null +++ b/recipes/htop.toml @@ -0,0 +1,32 @@ +# htop 3.5.1 — monitor de procesos interactivo. Etapa G, tier-2 C. Consumidor TUI canónico de +# ncurses: valida la capa CURSES real (ventanas/teclado/colores), no sólo el lookup de terminfo de less. +# +# Importada de Alpine aports (release tarball, trae configure). Ajustes: +# - deps.build = ["ncurses", "linux-headers"]: htop usa la API de curses widec (-lncursesw) y headers +# de Linux (taskstats/cgroup). Quito lm-sensors del makedepends de Alpine: el soporte de sensores +# es OPCIONAL (libsensors auto-detectado) y no está en el corpus ⇒ `--disable-sensors` explícito. +# - compiler=gcc (gueto, igual que ncurses/less): zig-cc miscompila estos C clásicos. +# - link=static + sin libtool en el link del binario ⇒ LDFLAGS=-static del lab basta (htop static-pie). +# htop auto-detecta ncursesw (widec) para soporte unicode — la ncurses del corpus es widec. +# +# $CBUILD/$CHOST los da el lab (build==host ⇒ nativo). + +name = "htop" +version = "3.5.1" + +[source] +tarball = "https://github.com/htop-dev/htop/releases/download/3.5.1/htop-3.5.1.tar.xz" +sha256 = "526cecd62870aa8d14d2a79a35ea197e4e2b5317d275b567cee0574b2ddb2e9a" + +[build] +compiler = "gcc" +target = "x86_64-linux-musl" +link = "static" + +[build.phases] +configure = "./configure --build=$CBUILD --host=$CHOST --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man --enable-cgroup --enable-taskstats --disable-sensors" +compile = "make -j\"$(nproc)\"" +install = "make DESTDIR=/out install" + +[deps] +build = ["ncurses", "linux-headers"]