Repolode
jdx

jdx/packslip

インストーラーやパッケージマネージャーが、ホストに適したバイナリアーティファクトを選び、検証できる署名付きリリースマニフェスト。

スター
198
フォーク
5
未解決の Issue
1
最終コミット
昨日

これは何?

packslipは、アーカイブ、インストーラー、実行ファイルとして配布されるソフトウェア向けの署名付きリリースマニフェストです。リリースでは、アーティファクトと並べて単一のファイル `packslip.sigstore.json` を公開します。インストーラー、パッケージマネージャー、ミラーは、このバンドルをプロジェクトの署名者に照らして検証し、ホストに適したアーティファクト、その中で実行ファイルが置かれている場所、ダウンロードしたファイルが一致すべきダイジェストを確認できます。これにより、ファイル名から推測したり、バイナリと一緒に配信されるチェックサムファイルを信頼したりする必要がなくなります。

プロジェクトには、ワークフローの ID を使ってアーティファクトのダイジェスト、プラットフォーム、実行ファイルのパスを記したステートメントに署名する GitHub Action が含まれており、長期間有効な署名鍵は不要です。また、リリースの公開、検証、インストールを行うコマンドを備えた CLI も提供します。`packslip install` はツールの署名付きリリースを取得し、アーカイブ全体をインストールして、ダウンロードしたコードを実行せずに、宣言されたコマンドを `bin` ディレクトリに配置します。この形式はバージョン 1 で安定版とされています。

主な機能

  • 01アーティファクトをプラットフォームおよび実行ファイルのパスに対応付ける署名付きバンドルを公開します。
  • 02`packslip verify` を使い、バンドル内のダイジェストと照合してリリースアーティファクトを検証します。
  • 03`packslip install` で GitHub またはドメインプロジェクトからツールをインストールします。ダウンロードしたコードは実行しません。
  • 04長期間有効な署名鍵を使わず、GitHub Actions のワークフロー ID で動作します。
  • 05形式はバージョン 1 で安定版とされています。

ユースケース

  • CLI ツールを公開し、ユーザーがスクリプトをシェルにパイプして実行するのではなく、検証可能な方法でインストールできるようにする。
  • 各プラットフォームに適したバイナリを選ぶ必要があるインストーラーやパッケージマネージャーを構築する。
  • ミラーや内部ツールで、ダウンロードしたリリースアーティファクトが正規のものであることを確認できるようにする。
  • 既存の、タグをトリガーとする CI リリースジョブに、署名付きリリース検証を追加する。

クイックスタート

  1. 1

    インストールガイドに従ってpackslipをインストールする

  2. 2

    署名済みリリースからツールをインストールする

    packslip install github.com/jdx/hk

使う前に知っておきたいこと

  • CLIにはアップグレード、一覧表示、アンインストールのコマンドがありません。
  • packslip自体のインストールには別途インストールガイドに従う必要があり、READMEには単一のコマンドとして記載されていません。

トピック

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

よくある質問

packslip とは?
インストーラーやパッケージマネージャーが、ホストに適したバイナリアーティファクトを選び、検証できる署名付きリリースマニフェスト。 packslipは、アーカイブ、インストーラー、実行ファイルとして配布されるソフトウェア向けの署名付きリリースマニフェストです。リリースでは、アーティファクトと並べて単一のファイル `packslip.sigstore.json` を公開します。インストーラー、パッケージマネージャー、ミラーは、このバンドルをプロジェクトの署名者に照らして検証し、ホストに適したアーティファクト、その中で実行ファイルが置かれている場所、ダウンロードしたファイルが一致すべきダイジェストを確認できます。これにより、ファイル名から推測したり、バイナリと一緒に配信されるチェックサムファイルを信頼したりする必要がなくなります。
packslip は無料で使えますか?ライセンスは?
packslip は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
packslip は今もメンテナンスされていますか?
活発にメンテナンス中。packslip の最終コミットは 2026年11月6日 です。
packslip は何に使えますか?
CLI ツールを公開し、ユーザーがスクリプトをシェルにパイプして実行するのではなく、検証可能な方法でインストールできるようにする。 各プラットフォームに適したバイナリを選ぶ必要があるインストーラーやパッケージマネージャーを構築する。 ミラーや内部ツールで、ダウンロードしたリリースアーティファクトが正規のものであることを確認できるようにする。 既存の、タグをトリガーとする CI リリースジョブに、署名付きリリース検証を追加する。
packslip のインストール方法は?
インストールガイドに従ってpackslipをインストールする 署名済みリリースからツールをインストールする: packslip install github.com/jdx/hk
packslip はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/jdx/packslip

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト