From c1466de9d6e3979691578793ffdd7b12928d202a Mon Sep 17 00:00:00 2001 From: Sergio Date: Thu, 27 Aug 2026 16:07:21 +0000 Subject: [PATCH] =?UTF-8?q?rsync:=20subir=203.4.4=20=E2=86=92=203.5.0=20?= =?UTF-8?q?=E2=80=94=20upstream=20pod=C3=B3=20el=20tarball=20viejo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit samba.org borró `rsync-3.4.4.tar.gz` (404) y en ese directorio ya sólo queda 3.5.0. Tampoco estaba en nuestro mirror, así que la receta era INCONSTRUIBLE: la única fuente MUERTA del corpus según docs/state/fuentes-vigia.json (1164 vivas / 3 muertas; las otras dos son un 502 transitorio de savannah). ⚠ NO es «cambiar el sha256 para tapar un 404» (lo prohibido por ADR 0013): el tarball es OTRO, con su versión y su hash propios. Provenance verificada de verdad, no asumida: gpg --verify rsync-3.5.0.tar.gz.asc rsync-3.5.0.tar.gz → Good signature from "Andrew Tridgell " RSA key 9FEF112DCE19A0DC7E882CB81BB24997A8535F6F Clave traída de keys.openpgp.org; su fingerprint coincide con el `issuer` del .asc. El aviso «User ID not certified» es esperable (no hay web-of-trust acá); la firma en sí es válida. Comprobado ANTES de subir: las diez opciones de configure siguen existiendo en 3.5.0, `rrsync.1` sigue en la raíz, y dont-use-nobody.patch aplica limpio (`patch -p1 --dry-run` sin rechazos). Verificado: sella, artefacto de 3,3 M con rsync/rrsync/rsync-ssl, y el binario responde `rsync version 3.5.0 protocol version 32`. --- recipes/rsync.toml | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/recipes/rsync.toml b/recipes/rsync.toml index bc20702a..9d5f4e5d 100644 --- a/recipes/rsync.toml +++ b/recipes/rsync.toml @@ -1,15 +1,32 @@ -# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero -# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el -# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild. +# Importada de Alpine aports por `hammer import-alpine` (Etapa G) — trae los parches de musl de +# Alpine (lo que un import de nix pierde). El sha256 ya NO está pendiente: es el de 3.5.0, con firma +# verificada (ver abajo). name = "rsync" -version = "3.4.4" +version = "3.5.0" license = "GPL-3.0-or-later" +# ── 3.4.4 → 3.5.0 (2026-08-27): SUBIDA DE VERSIÓN, no un parche de hash ───────────────────────── +# samba.org PODÓ el tarball de 3.4.4: `download.samba.org/pub/rsync/rsync-3.4.4.tar.gz` da 404 y en +# ese directorio ya sólo queda 3.5.0. Tampoco está en nuestro mirror de fuentes, así que la receta +# era INCONSTRUIBLE — es la única fuente MUERTA del corpus según `docs/state/fuentes-vigia.json` +# (1164 vivas / 3 muertas; las otras dos son un 502 transitorio de savannah). +# +# ⚠ Esto NO es «cambiar el sha256 para tapar un 404», que es justo lo prohibido (ADR 0013): el +# tarball es OTRO, con su versión y su hash propios. La provenance se verificó de verdad: +# +# gpg --verify rsync-3.5.0.tar.gz.asc rsync-3.5.0.tar.gz +# → Good signature from "Andrew Tridgell " +# RSA key 9FEF112DCE19A0DC7E882CB81BB24997A8535F6F +# +# (la clave se trajo de keys.openpgp.org y el fingerprint coincide con el `issuer` del .asc; el aviso +# de «User ID not certified» es esperable: no hay web-of-trust montada acá, la FIRMA sí es válida). +# +# Comprobado antes de subir: las diez opciones de `configure` de abajo siguen existiendo en 3.5.0, +# `rrsync.1` sigue en la raíz (la fase configure lo copia a support/) y `dont-use-nobody.patch` +# aplica limpio (`patch -p1 --dry-run` sin rechazos). [source] -tarball = "https://download.samba.org/pub/rsync/rsync-3.4.4.tar.gz" -# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine: -# sha512 = "cf9a838b1f019b70fd67fa2c293f267be3f24e579c2ea33177ec7afc502c97ce0b613ff0854088c0eb28acd14ee0a75706ae8445115cef4669bd586c505d8453" -sha256 = "bd88cf82fa653da32314fb229136407c5c90f80d1758d8f4b091767877d8fa96" +tarball = "https://download.samba.org/pub/rsync/rsync-3.5.0.tar.gz" +sha256 = "c7ffd1ef653e99540f661e47cb00b7f9cad1ee6b972399b16f93d672656e0d33" patches = ["dont-use-nobody.patch"] [build]