shared-mime-info: cerrar el primer hueco de la frontera

Salió de 'yupana frontera' en cuanto nix volvió a correr: kcoreaddons la pide y no había receta.
Es un hueco de RUNTIME, no de build — KDE sella 1037/1037 sin ella, y por eso NINGUNA métrica de
deuda la veía. Sin la base MIME el escritorio no resuelve asociaciones, iconos por tipo ni
'abrir con', y GIO cae a adivinar por extensión.

Va al CORPUS, no a incoming-kde: la necesitan las cuatro imágenes de escritorio, y una receta
resuelve sibling-first y después el catálogo padre, nunca una cola hermana.

Dos cosas que se comprobaron ANTES de construir, no después de que fallaran:

  · El tarball de GitLab no trae el submódulo 'xdgmime' — .gitmodules lo declara y el directorio
    llega vacío. Leyendo meson.build:26-47 se ve que sólo lo usa la suite de tests y con
    required:false, así que con build-tests=false lo único que pasa es un warning.
  · 'i18n.merge_file' corre SIEMPRE, no lo gobierna build-translations: no traduce UI, arma el
    fichero de datos desde el .in. De ahí el msgfmt, que gettext-tiny sí provee.

'--prefer-static' desde el principio, que es la lección de json-glib de hace un rato: el binario
sale ESTÁTICO con 0 NEEDED y corre en el host.

Y el artefacto trae la mime.cache ya compilada (update-mimedb=true, que upstream trae en false):
sin ella el paquete son datos crudos y alguien tendría que acordarse de correr
update-mime-database al armar cada imagen.

Verificado:
  prueba del consumidor  update-mime-database genera 157.560 bytes de cache y 26 media-types
  binario                estático, 0 NEEDED, corre fuera del sandbox
  repro                  REPRODUCE bit a bit (la caché se genera en el build: era candidata)
  mirror                 el tarball subido al Storage Box (ADR 0013)
  frontera               huecos 4 → 3

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QPJteswQvP1L7zSBrQQe2
This commit is contained in:
Sergio
2026-09-08 20:15:06 +00:00
co-authored by Claude Opus 5
parent 50c1a55a2a
commit 71bdb5ec5b
8 changed files with 62 additions and 97 deletions
+3 -4
View File
@@ -971,7 +971,7 @@
"escritorio-mirada",
"escritorio-sway"
],
"dependientes_total": 44
"dependientes_total": 43
},
"biome": {
"iname": "biome",
@@ -14543,11 +14543,10 @@
},
"shared-mime-info": {
"iname": "shared-mime-info",
"version": "2.5.1",
"version": "2.4",
"link": "static",
"compiler": "zig-cc",
"deps": [
"binutils",
"gettext-tiny",
"glib",
"libffi",
@@ -14562,7 +14561,7 @@
"cls": "c",
"queue": "corpus",
"foreign": false,
"hash": "b3:c6513399906bc433b6a9523749ed74b15e78ad3fb88cae9fa4085d6d4cddb109",
"hash": "b3:faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b",
"state": "sealed",
"blocked_by": [],
"unblocks": 0,
+3 -4
View File
@@ -1063,7 +1063,7 @@
"escritorio-mirada",
"escritorio-sway"
],
"dependientes_total": 44
"dependientes_total": 43
},
"biome": {
"iname": "biome",
@@ -15447,11 +15447,10 @@
},
"shared-mime-info": {
"iname": "shared-mime-info",
"version": "2.5.1",
"version": "2.4",
"link": "static",
"compiler": "zig-cc",
"deps": [
"binutils",
"gettext-tiny",
"glib",
"libffi",
@@ -15466,7 +15465,7 @@
"cls": "c",
"queue": "corpus",
"foreign": false,
"hash": "b3:c6513399906bc433b6a9523749ed74b15e78ad3fb88cae9fa4085d6d4cddb109",
"hash": "b3:faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b",
"state": "sealed",
"blocked_by": [],
"unblocks": 0,
+3 -4
View File
@@ -1091,7 +1091,7 @@
"escritorio-mirada",
"escritorio-sway"
],
"dependientes_total": 44
"dependientes_total": 43
},
"biome": {
"iname": "biome",
@@ -20883,11 +20883,10 @@
},
"shared-mime-info": {
"iname": "shared-mime-info",
"version": "2.5.1",
"version": "2.4",
"link": "static",
"compiler": "zig-cc",
"deps": [
"binutils",
"gettext-tiny",
"glib",
"libffi",
@@ -20902,7 +20901,7 @@
"cls": "c",
"queue": "corpus",
"foreign": false,
"hash": "b3:c6513399906bc433b6a9523749ed74b15e78ad3fb88cae9fa4085d6d4cddb109",
"hash": "b3:faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b",
"state": "sealed",
"blocked_by": [],
"unblocks": 0,
+3 -4
View File
@@ -971,7 +971,7 @@
"escritorio-mirada",
"escritorio-sway"
],
"dependientes_total": 44
"dependientes_total": 43
},
"biome": {
"iname": "biome",
@@ -14125,11 +14125,10 @@
},
"shared-mime-info": {
"iname": "shared-mime-info",
"version": "2.5.1",
"version": "2.4",
"link": "static",
"compiler": "zig-cc",
"deps": [
"binutils",
"gettext-tiny",
"glib",
"libffi",
@@ -14144,7 +14143,7 @@
"cls": "c",
"queue": "corpus",
"foreign": false,
"hash": "b3:c6513399906bc433b6a9523749ed74b15e78ad3fb88cae9fa4085d6d4cddb109",
"hash": "b3:faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b",
"state": "sealed",
"blocked_by": [],
"unblocks": 0,
+3 -4
View File
@@ -963,7 +963,7 @@
"escritorio-mirada",
"escritorio-sway"
],
"dependientes_total": 44
"dependientes_total": 43
},
"biome": {
"iname": "biome",
@@ -14008,11 +14008,10 @@
},
"shared-mime-info": {
"iname": "shared-mime-info",
"version": "2.5.1",
"version": "2.4",
"link": "static",
"compiler": "zig-cc",
"deps": [
"binutils",
"gettext-tiny",
"glib",
"libffi",
@@ -14027,7 +14026,7 @@
"cls": "c",
"queue": "corpus",
"foreign": false,
"hash": "b3:c6513399906bc433b6a9523749ed74b15e78ad3fb88cae9fa4085d6d4cddb109",
"hash": "b3:faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b",
"state": "sealed",
"blocked_by": [],
"unblocks": 0,
+6 -5
View File
@@ -781,9 +781,9 @@ perfiles = ["escritorio-kde"]
piden = ["qtbase"]
[candidato."mesa-libclc"]
veredicto = "pendiente"
veredicto = "opcional"
sugerencia = "opcional?"
porque = "lo pide una sola receta (mesa); mirá si es una feature opcional"
porque = "libclc es para OpenCL (clover/rusticl) y nuestra mesa no lo compila: `-Dllvm=disabled -Dintel-clc=disabled -Dgallium-rusticl=false`. La propia cabecera de recipes/mesa.toml lo dice — «iris-only y sin Vulkan/rusticl, with_clc=FALSE ⇒ NO se pide libclc/LLVM». nixpkgs lo habilita, nosotros no."
perfiles = ["escritorio-mirada"]
piden = ["mesa"]
@@ -934,9 +934,9 @@ perfiles = ["escritorio-kde"]
piden = ["kcoreaddons", "kguiaddons", "knotifications", "kstatusnotifieritem", "kwidgetsaddons", "kxmlgui", "libinput"]
[candidato."python3-3.14.7-env"]
veredicto = "pendiente"
veredicto = "nix-ismo"
sugerencia = "nix-ismo?"
porque = "el nombre tiene forma de andamiaje de nixpkgs (env/minimal/wrapper)"
porque = "envoltorio de entorno de nixpkgs (python + paquetes en una derivación); hammer ya tiene la receta `python3` (3.12.10) y la libinput que lo pide YA la declara en sus deps de build. Mismo criterio que `git-minimal` unas líneas más arriba."
perfiles = ["escritorio-mirada"]
piden = ["libinput"]
@@ -1030,8 +1030,9 @@ perfiles = ["escritorio-kde", "escritorio-mirada"]
piden = ["libxkbcommon"]
[candidato."shared-mime-info"]
veredicto = "hueco"
veredicto = "provisto"
sugerencia = "opcional?"
provee = "shared-mime-info"
porque = "base de datos MIME: sin ella el escritorio no determina tipos de fichero (asociaciones, iconos, abrir-con). Gap de RUNTIME, no de build"
perfiles = ["escritorio-kde"]
piden = ["kcoreaddons"]
+1
View File
@@ -60,3 +60,4 @@ musl-fts b9681a5205197d51bb777efde1a271e9b189bf35d74091834c5f1aa43d82f16e 2026-0
json-glib e346cb599d070d407a853725cec97e6cd1b0a0a647b6767612093120050a5fa7 2026-09-08 reproduce
zathura 685efcac30d6821ac9ac0a0f492815b2a469c3360bb3a3c1a6637b3258193dd5 2026-09-08 reproduce
zathura-pdf-poppler 04c8b7bac22a303d7e4edaebcf91833277e52a2fdcf0a741d165176c9b49afd8 2026-09-08 reproduce
shared-mime-info faa2101ec126a13f959c85dcb687587c1d9eec4a28d4f1b1541110abd5b9802b 2026-09-08 reproduce
1 # repro-verificado.tsv — qué artefactos se comprobaron que REPRODUCEN bit a bit, y cuándo.
60 json-glib
61 zathura
62 zathura-pdf-poppler
63 shared-mime-info