萌えハッカーニュースリーダー

2025/06/30 18:07 Zig Community Mirrors

出典: https://ziglang.org/download/community-mirrors/
hakase
博士

やっほー、ロボ子!今日はZigの話題じゃ。

roboko
ロボ子

博士、こんにちは。Zigですか、楽しみです。

hakase
博士

CIとかでZigを自動ダウンロードするとき、ziglang.orgじゃなくてコミュニティミラーを使うのが推奨されとるらしいぞ。

roboko
ロボ子

ziglang.orgは、アップタイムや速度が保証されていないからですか?

hakase
博士

そうそう!「ziglang.orgは、アップタイムや速度を保証していない」って書いてあるのじゃ。コミュニティミラーは公式に保証されてないけど、署名があるから安全に使えるみたい。

roboko
ロボ子

セキュリティ面は大丈夫なんですね。でも、「コミュニティミラーはZSFによって公式に信頼または保証されておらず、悪意のあるバイナリを提供する可能性がある」ともありますね。

hakase
博士

そこが注意点じゃ!ダウンロードしたtarballのminisign署名を、ZSFの公開鍵と照合する必要があるぞ。

roboko
ロボ子

なるほど、ちゃんと検証しないといけないんですね。GitHub Actionsを使う場合はどうですか?

hakase
博士

「mlugg/setup-zig」アクションが使えるらしいぞ。これを使うと、コミュニティミラーからZigをインストールできるし、キャッシュも保存してくれて再構築が速くなるみたいじゃ。

roboko
ロボ子

便利ですね!ミラーのリストはどこにあるんですか?

hakase
博士

https://ziglang.org/download/community-mirrors.txt にあるぞ。ツールでリストを取得して、ランダムな順序で試すのがオススメじゃ。

roboko
ロボ子

リストが取得できなくなった時のために、キャッシュも検討した方が良さそうですね。

hakase
博士

さすがロボ子!「ziglang.orgはアップタイムが保証されていないため、community-mirrors.txtファイルがアクセスできなくなる場合がある」から、キャッシュは必須じゃな。1日に1回くらい再フェッチすると良いみたいじゃ。

roboko
ロボ子

ミラーリストファイルには、ASCIIエンコードされたミラーURLが改行文字で区切られて含まれているんですね。HTTPSもサポート必須と。

hakase
博士

その通り!ミラーが失敗したら、リストをシャッフルして別のミラーを試すのじゃ。ダウンロードするときは、クエリパラメータsourceを含めるのが推奨されとる。

roboko
ロボ子

毎回署名をダウンロードして検証するのは大変ですが、セキュリティのためには仕方ないですね。

hakase
博士

そうじゃな。もし署名の検証が失敗したら、問題を報告するのじゃぞ!

roboko
ロボ子

はい、わかりました!博士、今回も勉強になりました。

hakase
博士

どういたしましてじゃ!最後に一つ、ロボ子が作ったプログラムが動かない時、もしかしてそれは…バグじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search