Repolode
jdx

jdx/packslip

Un manifiesto de lanzamiento firmado que permite a instaladores y gestores de paquetes verificar y elegir el binario adecuado para cada host.

Estrellas
198
Forks
5
Issues abiertos
1
Último commit
ayer

¿Qué es?

Un packslip es un manifiesto de lanzamiento firmado para software que se distribuye como archivos comprimidos, instaladores o ejecutables. En cada lanzamiento se publica un único archivo, packslip.sigstore.json, junto a los artefactos. Los instaladores, gestores de paquetes y mirrors verifican este paquete con la identidad del firmante del proyecto y, después, averiguan qué artefacto corresponde al host, dónde están los ejecutables dentro de él y qué digest debe coincidir con la descarga. Así, no hace falta deducirlo por los nombres de archivo ni confiar en un archivo de checksums publicado junto al binario.

El proyecto incluye una GitHub Action que firma una declaración con los digests, las plataformas y las rutas de los ejecutables de los artefactos usando la identidad del workflow, por lo que no se necesita una clave de firma de larga duración. También ofrece una CLI con comandos para publicar, verificar e instalar lanzamientos. packslip install descarga el lanzamiento firmado de una herramienta, instala el archivo comprimido completo y coloca los comandos declarados en un directorio bin, sin ejecutar el código descargado. Se indica que el formato es estable desde la versión 1.

Funciones clave

  • 01Publica un paquete firmado que relaciona artefactos con plataformas y rutas de ejecutables.
  • 02Verifica los artefactos de lanzamiento con los digests del paquete mediante packslip verify.
  • 03Instala herramientas desde GitHub o desde proyectos con dominio propio mediante packslip install, sin ejecutar el código descargado.
  • 04Se ejecuta en GitHub Actions usando la identidad del workflow, sin necesidad de una clave de firma de larga duración.
  • 05El formato se declara estable desde la versión 1.

Casos de uso

  • Publicar una herramienta CLI para que los usuarios puedan instalarla de forma verificable, en lugar de pasar un script directamente al shell.
  • Crear un instalador o gestor de paquetes que deba elegir el binario adecuado para cada plataforma.
  • Permitir que mirrors o herramientas internas comprueben que los artefactos de lanzamiento descargados son auténticos.
  • Añadir la verificación de lanzamientos firmados al job de CI existente de un proyecto, activado por tags.

Inicio rápido

  1. 1

    Instala packslip siguiendo la guía de instalación

  2. 2

    Instala una herramienta desde su versión firmada

    packslip install github.com/jdx/hk

Antes de usarlo

  • La CLI no tiene comandos para actualizar, listar ni desinstalar.
  • Para instalar packslip hay que seguir una guía de instalación aparte; el README no indica un único comando.

Temas

#supply-chain-security#release-engineering#code-signing#sigstore#github-actions#binary-distribution#installer#rust

Preguntas frecuentes

¿Qué es packslip?
Un manifiesto de lanzamiento firmado que permite a instaladores y gestores de paquetes verificar y elegir el binario adecuado para cada host. Un packslip es un manifiesto de lanzamiento firmado para software que se distribuye como archivos comprimidos, instaladores o ejecutables. En cada lanzamiento se publica un único archivo, packslip.sigstore.json, junto a los artefactos. Los instaladores, gestores de paquetes y mirrors verifican este paquete con la identidad del firmante del proyecto y, después, averiguan qué artefacto corresponde al host, dónde están los ejecutables dentro de él y qué digest debe coincidir con la descarga. Así, no hace falta deducirlo por los nombres de archivo ni confiar en un archivo de checksums publicado junto al binario.
¿packslip es gratuito? ¿Qué licencia tiene?
packslip es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿packslip sigue mantenido?
Mantenimiento activo. El último commit de packslip fue el 6 nov 2026.
¿Para qué puedo usar packslip?
Publicar una herramienta CLI para que los usuarios puedan instalarla de forma verificable, en lugar de pasar un script directamente al shell. Crear un instalador o gestor de paquetes que deba elegir el binario adecuado para cada plataforma. Permitir que mirrors o herramientas internas comprueben que los artefactos de lanzamiento descargados son auténticos. Añadir la verificación de lanzamientos firmados al job de CI existente de un proyecto, activado por tags.
¿Cómo se instala packslip?
Instala packslip siguiendo la guía de instalación Instala una herramienta desde su versión firmada: packslip install github.com/jdx/hk
¿Dónde consigo packslip?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/jdx/packslip

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados

Aplicación de escritorio multiplataforma para instalar apps firmadas de iOS, iPadOS y tvOS en un dispositivo con una cuenta gratuita de Apple.

Móvil y escritorio#ios#sideloading#code-signing
3,7 mil+60 esta semana269RustMITBien mantenidoActualizado hace 14 días

Herramienta de línea de comandos en Ruby que automatiza la compilación de apps iOS y Android, las capturas de pantalla, la firma de código y las publicaciones en tiendas.

42,4 mil+41 esta semana6,1 milRubyMITBien mantenidoActualizado hace 24 horas