targets: declarar lo que ya estaba sellado y en ninguna imagen — y las dos capacidades del punto 8
MEDIDO al ir a declarar las recetas nuevas, y es más grande que ellas: de las 892 recetas selladas del corpus, **649 no están en NINGÚN perfil**. El 73% del catálogo está compilado y no viaja en ninguna imagen. No es deuda de build (drenaje.json dice 0) y la métrica de perfil NO lo puede ver: mide la clausura de lo DECLARADO. Es la lección de foot a escala de catálogo. Concreto: yazi, atuin, zellij, jujutsu, just, direnv, watchexec, mise, xh, age, rclone, restic, lazygit, difftastic, bottom y duf estaban selladas hace meses y en cero imágenes; y `helix` estaba declarada sólo en escritorio-gnome, que es donde menos sentido tiene. perfil.cli += esas 16 + las nuevas de hoy (btop, ncdu, nushell, aerc, cmus, syncthing). Cero recetas nuevas y cero builds: sólo dejan de ser invisibles. Como los CUATRO escritorios y `servidor` heredan `cli`, una sola edición los alcanza a todos. perfil.servidor += wireguard-tools: el kernel ya trae WireGuard (SDD 22) y no había con qué configurarlo — misma figura que el cortafuegos y el reloj que este perfil ya declaraba. Los cuatro escritorios += cups, bluez (punto 8 de PUBLICABLE, docs/20). Viven en el CORPUS y no en las colas por lo mismo que mpv y atuq: se alcanzan sibling-first→padre, una copia para los cuatro. ⚠ DEUDA DECLARADA, NO OLVIDO: las dos recetas traen su [[service]] y los perfiles NO los arrancan — de los cuatro escritorios sólo escritorio-gnome tiene lista `servicios`. Los otros tres no arrancan NADA, y eso es más grande que cups y bluez. Va escrito en el fichero para que se vea. El barrido de las 649 queda pendiente y es su propia unidad de trabajo: 363 son recetas Go importadas en tanda (herramientas de desarrollo) y NO todas deben entrar en una imagen. Comprobado con scripts/targets.py: los ocho perfiles resuelven, sin nombres desconocidos.
This commit is contained in:
@@ -63,10 +63,40 @@ paquetes = [
|
||||
descripcion = "la capa CLI moderna (Rust) encima de base — el userland real del producto"
|
||||
hereda = ["base"]
|
||||
# Lift verbatim de CLI_RUST_PKGS (scripts/product-userland-from-repo.sh).
|
||||
#
|
||||
# ⚠ 2026-09-12: ESTA LISTA ERA UN LIFT DE UN SCRIPT, NO UNA DECLARACIÓN DE LO QUE HAY. Medido
|
||||
# contra los cinco grafos: de las 892 recetas selladas del corpus, **649 no están en NINGÚN
|
||||
# perfil** — o sea que el 73% del catálogo está sellado y no viaja en ninguna imagen. No es deuda
|
||||
# de build (`drenaje.json` dice 0) ni la métrica de perfil lo puede ver: mide la clausura de lo
|
||||
# DECLARADO. Es la lección de `foot` a escala de catálogo, y se descubrió al ir a declarar recetas
|
||||
# nuevas y notar que las viejas tampoco estaban.
|
||||
#
|
||||
# El barrido completo de las 649 es su propia unidad de trabajo (hay 363 recetas Go que son
|
||||
# herramientas de desarrollo importadas en tanda y NO todas deben entrar en una imagen). Lo que se
|
||||
# declara abajo es el subconjunto que ya estaba sellado y que un usuario de esta capa espera
|
||||
# encontrar — cero recetas nuevas, cero builds: sólo dejan de ser invisibles.
|
||||
paquetes = [
|
||||
"bat", "fd", "ripgrep", "jq", "zoxide", "dust", "procs", "htop", "less", "tree",
|
||||
"hyperfine", "delta", "eza", "sd", "tokei", "fzf", "skim", "git-cliff", "gitui",
|
||||
"starship",
|
||||
# ── SELLADAS DESDE HACE MESES Y EN NINGUNA IMAGEN (2026-09-12) ───────────────────────────────
|
||||
# editor, multiplexor, gestor de ficheros e historial de shell: las cuatro piezas con las que se
|
||||
# VIVE en una terminal. `helix` estaba declarada sólo en escritorio-gnome, que es donde menos
|
||||
# sentido tiene — es la capa CLI la que la necesita.
|
||||
"helix", "zellij", "yazi", "atuin",
|
||||
# VCS más allá de git: jj (jujutsu) como VCS moderno, lazygit de TUI, difftastic para diffs
|
||||
# que entienden sintaxis.
|
||||
"jujutsu", "lazygit", "difftastic",
|
||||
# el cinturón de quien construye cosas
|
||||
"just", "direnv", "watchexec", "mise",
|
||||
# red y datos: cliente HTTP, cifrado de ficheros, copia a remoto y respaldo
|
||||
"xh", "age", "rclone", "restic",
|
||||
# sistema: los dos monitores y los dos contadores de disco
|
||||
"bottom", "btop", "duf", "ncdu",
|
||||
# ── NUEVAS DE LA TANDA DEL 2026-09-12 ───────────────────────────────────────────────────────
|
||||
# shell moderna (INTERACTIVA, no /bin/sh: su lenguaje no es POSIX), correo en terminal,
|
||||
# reproductor de música y sincronización entre máquinas.
|
||||
"nushell", "aerc", "cmus", "syncthing",
|
||||
]
|
||||
|
||||
[perfil.escritorio-mirada]
|
||||
@@ -317,6 +347,23 @@ paquetes = [
|
||||
# backend tampoco lo ANUNCIA ya en su `kde.portal` (verificado: 0 apariciones de Print), que es lo
|
||||
# que evita que el frontend enrute a un portal que no contesta.
|
||||
"xdg-desktop-portal", "xdg-desktop-portal-kde",
|
||||
# ── LAS DOS CAPACIDADES QUE FALTABAN EN LOS CUATRO ESCRITORIOS (2026-09-12) ──────────────────
|
||||
# `cups` y `bluez` eran el punto 8 de PUBLICABLE (`docs/20`), y no son «una app más»: un
|
||||
# escritorio que no imprime y no habla con un auricular no es un escritorio. Las dos viven en el
|
||||
# CORPUS —no en esta cola— por lo mismo que `mpv` y `atuq`: una receta resuelve sibling-first y
|
||||
# después el catálogo padre, así que desde acá se alcanzan y sirven a los cuatro perfiles con
|
||||
# una sola copia.
|
||||
#
|
||||
# ⚠ LA MITAD QUE ESTO NO PAGA, ESCRITA PARA QUE SE VEA. Las dos recetas declaran su `[[service]]`
|
||||
# (`cupsd`, `bluetoothd`) y **este perfil no los arranca**: de los cuatro escritorios, sólo
|
||||
# `escritorio-gnome` tiene una lista `servicios`. O sea que la imagen va a traer cupsd y
|
||||
# bluetoothd instalados y apagados. Es deuda declarada, no olvido — y es más grande que estas dos
|
||||
# recetas: son tres perfiles sin «enable» ninguno.
|
||||
#
|
||||
# ⚠ Y para cups hay un segundo tramo, anotado en su receta: `gtk3` está sellada con
|
||||
# `-Dprint_backends=file`, así que una app GTK3 seguirá viendo un solo destino («a fichero»)
|
||||
# hasta que gtk3 se re-selle. La pieza está, el sistema la ignora, y ninguna métrica lo dice.
|
||||
"cups", "bluez",
|
||||
]
|
||||
|
||||
[perfil.escritorio-gnome]
|
||||
@@ -590,6 +637,23 @@ paquetes = [
|
||||
# imprescindibles, presentes en la imagen y ausentes del destino declarado — la misma forma del
|
||||
# agujero de `foot`, encontrada esta vez por una comprobación en vez de por una imagen inusable.
|
||||
"arje-logind-compat", "arje-polkit-compat",
|
||||
# ── LAS DOS CAPACIDADES QUE FALTABAN EN LOS CUATRO ESCRITORIOS (2026-09-12) ──────────────────
|
||||
# `cups` y `bluez` eran el punto 8 de PUBLICABLE (`docs/20`), y no son «una app más»: un
|
||||
# escritorio que no imprime y no habla con un auricular no es un escritorio. Las dos viven en el
|
||||
# CORPUS —no en esta cola— por lo mismo que `mpv` y `atuq`: una receta resuelve sibling-first y
|
||||
# después el catálogo padre, así que desde acá se alcanzan y sirven a los cuatro perfiles con
|
||||
# una sola copia.
|
||||
#
|
||||
# ⚠ LA MITAD QUE ESTO NO PAGA, ESCRITA PARA QUE SE VEA. Las dos recetas declaran su `[[service]]`
|
||||
# (`cupsd`, `bluetoothd`) y **este perfil no los arranca**: de los cuatro escritorios, sólo
|
||||
# `escritorio-gnome` tiene una lista `servicios`. O sea que la imagen va a traer cupsd y
|
||||
# bluetoothd instalados y apagados. Es deuda declarada, no olvido — y es más grande que estas dos
|
||||
# recetas: son tres perfiles sin «enable» ninguno.
|
||||
#
|
||||
# ⚠ Y para cups hay un segundo tramo, anotado en su receta: `gtk3` está sellada con
|
||||
# `-Dprint_backends=file`, así que una app GTK3 seguirá viendo un solo destino («a fichero»)
|
||||
# hasta que gtk3 se re-selle. La pieza está, el sistema la ignora, y ninguna métrica lo dice.
|
||||
"cups", "bluez",
|
||||
]
|
||||
|
||||
# ── QUÉ ARRANCA (el «enable»; SDD 30 §3) ────────────────────────────────────────────────────────
|
||||
@@ -793,6 +857,23 @@ paquetes = [
|
||||
# en ningún perfil. COSMIC NO usa `arje-polkit-compat` (verificado: sus scripts no lo nombran),
|
||||
# así que va sólo este.
|
||||
"arje-logind-compat",
|
||||
# ── LAS DOS CAPACIDADES QUE FALTABAN EN LOS CUATRO ESCRITORIOS (2026-09-12) ──────────────────
|
||||
# `cups` y `bluez` eran el punto 8 de PUBLICABLE (`docs/20`), y no son «una app más»: un
|
||||
# escritorio que no imprime y no habla con un auricular no es un escritorio. Las dos viven en el
|
||||
# CORPUS —no en esta cola— por lo mismo que `mpv` y `atuq`: una receta resuelve sibling-first y
|
||||
# después el catálogo padre, así que desde acá se alcanzan y sirven a los cuatro perfiles con
|
||||
# una sola copia.
|
||||
#
|
||||
# ⚠ LA MITAD QUE ESTO NO PAGA, ESCRITA PARA QUE SE VEA. Las dos recetas declaran su `[[service]]`
|
||||
# (`cupsd`, `bluetoothd`) y **este perfil no los arranca**: de los cuatro escritorios, sólo
|
||||
# `escritorio-gnome` tiene una lista `servicios`. O sea que la imagen va a traer cupsd y
|
||||
# bluetoothd instalados y apagados. Es deuda declarada, no olvido — y es más grande que estas dos
|
||||
# recetas: son tres perfiles sin «enable» ninguno.
|
||||
#
|
||||
# ⚠ Y para cups hay un segundo tramo, anotado en su receta: `gtk3` está sellada con
|
||||
# `-Dprint_backends=file`, así que una app GTK3 seguirá viendo un solo destino («a fichero»)
|
||||
# hasta que gtk3 se re-selle. La pieza está, el sistema la ignora, y ninguna métrica lo dice.
|
||||
"cups", "bluez",
|
||||
]
|
||||
|
||||
[perfil.escritorio-sway]
|
||||
@@ -967,6 +1048,23 @@ paquetes = [
|
||||
# hermanas —`incoming-gnome` e `incoming-kde`— y desde acá no se alcanza una cola hermana, así que
|
||||
# pedirlo es promover uno al corpus. Queda escrito para que se elija, no para que se descubra.
|
||||
"hicolor-icon-theme",
|
||||
# ── LAS DOS CAPACIDADES QUE FALTABAN EN LOS CUATRO ESCRITORIOS (2026-09-12) ──────────────────
|
||||
# `cups` y `bluez` eran el punto 8 de PUBLICABLE (`docs/20`), y no son «una app más»: un
|
||||
# escritorio que no imprime y no habla con un auricular no es un escritorio. Las dos viven en el
|
||||
# CORPUS —no en esta cola— por lo mismo que `mpv` y `atuq`: una receta resuelve sibling-first y
|
||||
# después el catálogo padre, así que desde acá se alcanzan y sirven a los cuatro perfiles con
|
||||
# una sola copia.
|
||||
#
|
||||
# ⚠ LA MITAD QUE ESTO NO PAGA, ESCRITA PARA QUE SE VEA. Las dos recetas declaran su `[[service]]`
|
||||
# (`cupsd`, `bluetoothd`) y **este perfil no los arranca**: de los cuatro escritorios, sólo
|
||||
# `escritorio-gnome` tiene una lista `servicios`. O sea que la imagen va a traer cupsd y
|
||||
# bluetoothd instalados y apagados. Es deuda declarada, no olvido — y es más grande que estas dos
|
||||
# recetas: son tres perfiles sin «enable» ninguno.
|
||||
#
|
||||
# ⚠ Y para cups hay un segundo tramo, anotado en su receta: `gtk3` está sellada con
|
||||
# `-Dprint_backends=file`, así que una app GTK3 seguirá viendo un solo destino («a fichero»)
|
||||
# hasta que gtk3 se re-selle. La pieza está, el sistema la ignora, y ninguna métrica lo dice.
|
||||
"cups", "bluez",
|
||||
]
|
||||
|
||||
[perfil.servidor]
|
||||
@@ -1032,6 +1130,11 @@ paquetes = [
|
||||
# `logrotate`: en una caja que sirve, el log de acceso crece hasta llenar el disco. Caddy rota el
|
||||
# suyo por configuración, pero nada más lo hace.
|
||||
"logrotate",
|
||||
# `wireguard-tools` (2026-09-12): el kernel de esta distro YA trae WireGuard (SDD 22), y hasta hoy
|
||||
# no había con qué configurarlo — la caja podía hablar el protocolo y no había forma de decirle
|
||||
# con quién. Es la misma figura que el cortafuegos y el reloj de arriba: capacidad presente en el
|
||||
# kernel y ausente en el userland.
|
||||
"wireguard-tools",
|
||||
]
|
||||
|
||||
# ── QUÉ ARRANCA (el «enable»; SDD 30 §3) ────────────────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user