Zig とは
Zig は、堅牢で、最適で、再利用できるソフトウェアを保守するために設計された汎用プログラミング言語兼ツールチェインです。Andrew Kelley が作り、システムプログラマが必要とする単純さと性能を保ったまま、現代的な言語機能を備えた C のより良い代替を目指しています。
🔥 Zig の主な機能
⚡ シンプルで速い
隠れた制御フローも、隠れたメモリ確保も、プリプロセッサもありません。言語の知識ではなく、アプリケーションのデバッグに集中できます。
🔧 comptime の魔法
コンパイル時のコード実行と遅延評価。任意の関数をコンパイル時に呼び出し、型を値として扱えます。実行時のオーバーヘッドはありません。
🌐 クロスコンパイル
数十のターゲット向けクロスコンパイルを標準でサポート。ほとんどのプラットフォームで外部依存は不要です。
🔄 C/C++ との相互運用
Zig を C/C++ コンパイラとしてそのまま使えます。クロスコンパイルも優秀で、既存のコードベースに少しずつ Zig を持ち込めます。
apt upgrade を実行するだけで、常に最新版を使い続けられます。
📦 deb.griffo.io からインストールする
ステップ 1: リポジトリを追加する
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 ずっと無料のミラーがあります。 deb-free.griffo.io は、アカウントもサブスクリプションもなしでパッケージをずっと無料で配布しています。上流より最大2か月遅れ、セキュリティ修正は即座に公開されます。現在収録しているのは cliamp、Ghostty、lazydocker、Oh My Posh と Zed です。Zig は含まれていないため、今日入手する方法は上のリポジトリだけですが、ご要望があれば追加できます。
🧩 extrepo オプションについて。 extrepo は外部リポジトリを扱う Debian 標準のツールです。署名済みメタデータと照合して鍵を検証したうえで、sources ファイルの作成と署名鍵のインストールを代わりに行います。このリポジトリは griffo、ずっと無料のミラーは griffo-free という名前で登録されているので、Debian(bookworm、trixie、forky、sid)では上のコマンドだけで設定は完了です。
extrepo が用意するのは sources ファイルと鍵だけなので、サブスクリプションの認証情報は引き続き /etc/apt/auth.conf.d/deb.griffo.io.conf に書きます。extrepo は Debian のスイート向けメタデータしか公開していないため Ubuntu は対象外です。Ubuntu では sudo または root のコマンドを使ってください。
ステップ 2: Zig をインストールする
# 現在の安定版 Zig をインストール
sudo apt install zig
# あるいは、最先端の機能を試すなら nightly ビルドを
sudo apt install zig-master# 現在の安定版 Zig をインストール
apt install zig
# あるいは、最先端の機能を試すなら nightly ビルドを
apt install zig-master🎯 基本的な使い方
新しいプロジェクトを作る:
# プロジェクトのディレクトリを作って移動
mkdir my-zig-project && cd my-zig-project
# 新しい Zig プロジェクトを初期化
zig init
# ビルドして実行
zig build run単一ファイルをコンパイル:
# hello.zig を作る
echo 'const std = @import("std");
pub fn main() void {
std.debug.print("Hello, Zig!\n", .{});
}' > hello.zig
# コンパイルして実行
zig run hello.zigC コンパイラとして使う:
# Zig で C のコードをコンパイル
zig cc -o program program.c
# 別のターゲット向けにクロスコンパイル
zig cc -target x86_64-windows -o program.exe program.c🚀 deb.griffo.io を選ぶ理由
- ✅ 常に最新: Zig 0.16.0 を数か月後ではなく今すぐ
- ✅ nightly ビルド: zig-master パッケージで最先端の機能を
- ✅ 自動更新: 上流のリリースから数時間以内にパッケージを更新
- ✅ 依存関係も適切に: 必要な依存をすべて含めて正しくパッケージ化
- ✅ マルチディストリビューション: Bookworm、Trixie、Sid で動作
- ✅ 手間いらず: 手動でのコンパイルも、面倒な設定も不要
📦 パッケージのビルドリポジトリ
Debian パッケージは、これらの GitHub リポジトリで自動的にビルド・管理されています:
- 🇿 zig-debian (stable) - 安定版リリースのビルド
- 🇿 zig-master-debian (nightly) - nightly の開発ビルド
🔗 関連パッケージ
deb.griffo.io では、こちらも配布しています:
- ZLS 言語サーバー - Zig のための IDE 支援
- Ghostty ターミナル - 高速なターミナルエミュレータ
- Yazi ファイルマネージャ - ターミナルファイルマネージャ