openrc: corregir el marco de la receta — init alternativo, NO supervisor sobre arje
El comentario justificaba openrc como 'el supervisor de servicios que le falta a arje': falso. arje-zero es autónomo (PID1 + gestiona servicios). openrc es un init ALTERNATIVO que la distro ofrece y COMPITE con arje por PID1, no una capa que se apila. Reencuadrado como el patrón para el resto de la oferta multi-init (runit/s6/dinit). Corrige también la nota de deps: libcap NO es opcional en Linux (dependency incondicional en meson.build). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Semántico sayk'uy
Mana ima sutichaypas t'ikrakurqanchu: qillqalla, yachachiylla utaq willaylla t'ikrakurqan.
1 qillqakuna · +17 −7
- recipes/openrc.toml +17 −7
diff --git a/recipes/openrc.toml b/recipes/openrc.toml
index dd19c4f9..a9940bfc 100644
--- a/recipes/openrc.toml
+++ b/recipes/openrc.toml
@@ -1,14 +1,24 @@
# openrc 0.62.6 — gestor de servicios / init dependency-based (el de Gentoo y Alpine). C, meson.
-# Por qué en hammer: hammer bootea con arje-zero como PID1, pero openrc es el SUPERVISOR de
-# servicios que falta para una distro instalable de verdad (rc-service/rc-status/rc-update sobre
-# /etc/init.d). Es musl-clean por diseño: Alpine lo corre sobre musl en producción ⇒ encaja con el
-# toolchain zig-cc/musl static de hammer sin parches.
+#
+# POR QUÉ EN EL CATÁLOGO (marco honesto): openrc es un INIT ALTERNATIVO que la distro OFRECE, NO un
+# complemento de arje-zero. arje-zero es autónomo: es PID1 *y* gestiona sus servicios; no necesita —
+# ni debe apilar — un supervisor encima (ese acople es justo lo que arje existe para evitar). openrc
+# y arje son dos opciones de init que COMPITEN por el rol de PID1, no capas que se apilan. El valor de
+# tenerlo empacado es la oferta multi-init anti-monocultivo-systemd: quien quiera openrc COMO su init
+# (p.ej. viniendo de Artix/Gentoo) lo instala del catálogo y arranca con él en vez de arje.
+# → Este es el PATRÓN para el resto de la oferta de inits del catálogo (runit / s6 / dinit): empacar
+# como alternativa instalable, cada uno autosuficiente como PID1, NUNCA como "supervisor sobre X".
+# (Corrige el comentario original, que justificaba openrc como "el supervisor que le falta a arje" —
+# era una racionalización a posteriori, falsa: arje no tiene ese hueco.)
+#
+# musl-clean por diseño: Alpine lo corre sobre musl en producción ⇒ encaja con el toolchain zig-cc/
+# musl static de hammer sin parches.
#
# Estático (modelo hammer): -Ddefault_library=static + --prefer-static ⇒ libeinfo/librc salen .a y
# los binarios rc/rc-service enlazan static-musl. Deps OPCIONALES desactivadas para clausura mínima:
-# audit/selinux/pam/libcap son features 'auto'/required:false en el meson.build; sin declararlas ni
-# el sandbox las provee ⇒ no se enganchan. Se pueden sumar después (libcap ya está en el corpus) si
-# se quiere capability-dropping por servicio; por ahora, el núcleo.
+# audit/selinux/pam SÍ son features 'auto'/required:false en el meson.build ⇒ sin declararlas no se
+# enganchan. libcap NO: en Linux el meson.build hace `dependency('libcap', >=2.33)` INCONDICIONAL
+# (sin -Dlibcap para saltarlo; sólo se omite en no-Linux) ⇒ es dep obligatoria, va en [deps].build.
name = "openrc"
version = "0.62.6"