BlinkGTK の バイナリ配布物
をインストールする手順です。BlinkGTK は
WebKitGTK と同様に runtime(アプリの実行に必要)と
devel(BlinkGTK を
組み込むアプリの開発に必要)を分割配布します。GitHub Releases
からバイナリ
(RPM / DEB /
tarball)を取得してください。ソースからのビルドは配布物には
含まれません(バイナリ配布)。
| 項目 | 要件 |
|---|---|
| CPU | x86_64 (64-bit) |
| メモリ | 最小 2GB、推奨 4GB 以上 |
| ディスク | runtime 展開に約 700MB |
| OS | Linux (glibc 2.44 以上。Fedora 45 以降) |
| ディスプレイ | Wayland のみ(X11 非対応) |
| GTK4 | >= 4.6.0 |
| GLib | >= 2.70.0 |
ランタイム依存(アプリ実行に必要な共有ライブラリ):
# Fedora / RHEL
sudo dnf install gtk4 glib2 wayland vulkan-loader cups-libs
# Debian / Ubuntu
sudo apt install libgtk-4-1 libglib2.0-0 libwayland-client0 libvulkan1 libcups2Chromium ランタイム一式(V8 / Blink / Viz 等の 500 以上の .so
とリソース)は
runtime パッケージの private
ディレクトリ(/usr/lib64/blinkgtk-0.1/)に
同梱されるため、別途インストールは不要です。
| パッケージ | 用途 | 主な内容 |
|---|---|---|
| blinkgtk-bin(runtime) | アプリ実行 | /usr/lib64/libblinkgtk-0.1.so.0(公開 ABI)+
/usr/lib64/blinkgtk-0.1/(Chromium 一式・private)+
/usr/libexec/blinkgtk-0.1/(サンプル
blinkgtk_browser)+
THIRD_PARTY_NOTICES.html |
| blinkgtk-bin-devel(devel) | BlinkGTK を組み込むアプリの開発 | ヘッダ(/usr/include/blinkgtk-0.1/)+
pkg-config(/usr/lib64/pkgconfig/blinkgtk-0.1.pc)+
.so symlink |
| blinkgtk-bin-gir(gir) | Python/Rust 等の introspection | BlinkGTK-0.1.typelib |
アプリを動かすだけなら runtime のみ、BlinkGTK
を組み込むアプリを開発する場合は
devel(+ gir) も導入します。
配布アセットは GitHub Releases
から取得します(SHA256SUMS で検証してください)。
リポジトリを登録すると、以降は dnf upgrade
で新しい版に追随できます。
ファイルを毎回ダウンロードする必要はありません。
sudo dnf install https://blinkgtk.org/repo/fedora/blinkgtk-release.noarch.rpm
sudo dnf install blinkgtk-bin # runtime
sudo dnf install blinkgtk-bin-devel blinkgtk-bin-gir # 開発する場合blinkgtk-release はリポジトリの設定
(/etc/yum.repos.d/blinkgtk.repo)
と公開鍵だけのパッケージで、
Fedora の版ごとの置き場を見ます。以前 curl で
.repo を置いた場合も、この 1 行で置き換わります
(元のファイルは blinkgtk.repo.rpmorig
として残り、使われません)。
パッケージは署名してあり、.repo は
gpgcheck=1 で配っています。初回の
dnf install
で公開鍵の取り込みを確認されるので、指紋が次と一致することを
確かめてください。
D3A0 3E93 E845 4347 D52D 4372 2F48 F4B7 5395 96DA
この鍵の有効期限は 2028-07-06 です。期限が切れると
dnf が署名を検証でき
なくなり、更新が止まります。期限前に新しい鍵を公開し、このページの指紋を
差し替えます。差し替え後は、次のようにして新しい鍵を取り込んでください。
sudo rpm --import https://blinkgtk.org/repo/fedora/RPM-GPG-KEY-blinkgtk取り込む前に、必ずこのページの指紋と照合してください。
鍵はパッケージと
同じ場所から配っているため、指紋の照合だけが、鍵そのものが正しいことを確かめる
手段です。現在の鍵の指紋は次のコマンドでも確認できます。
curl -s https://blinkgtk.org/repo/fedora/RPM-GPG-KEY-blinkgtk \
| gpg --show-keys --with-fingerprintリポジトリのメタデータは blinkgtk.org に、パッケージ本体は GitHub
Releases に
置いています。dnf
はメタデータを読んで本体を取りに行くので、利用者側で
使い分ける必要はありません。
リポジトリを登録せず、ダウンロードした RPM を直接入れる場合。
# runtime のみ(アプリ実行)
sudo dnf install ./blinkgtk-release-*.noarch.rpm ./blinkgtk-bin-1.2.5-build5.fc45.x86_64.rpm
# 開発する場合は devel + gir も
sudo dnf install ./blinkgtk-bin-devel-1.2.5-build5.fc45.x86_64.rpm \
./blinkgtk-bin-gir-1.2.5-build5.fc45.x86_64.rpmsudo apt install ./libblinkgtk-0.1-0_1.2.5-build5-1_amd64.deb # runtime
sudo apt install ./libblinkgtk-0.1-dev_1.2.5-build5-1_amd64.deb # develruntime / devel とも FHS
レイアウト(usr/lib64/...)です。root(/)に展開します。
# runtime
sudo tar xzf blinkgtk-1.2.5-build5-linux-x86_64.tar.gz -C /
sudo ldconfig # ld.so.conf.d を反映
# devel(BlinkGTK を組み込むアプリを開発するときのみ)
sudo tar xzf blinkgtk-devel-1.2.5-build5-linux-x86_64.tar.gz -C /ldconfig は runtime に含まれる
/etc/ld.so.conf.d/blinkgtk-0.1.conf
(private ディレクトリを検索パスに追加)を反映するために実行します。
# 公開 ABI が ld.so で解決されるか
$ ldconfig -p | grep libblinkgtk-0.1
libblinkgtk-0.1.so.0 (libc6,x86-64) => /usr/lib64/libblinkgtk-0.1.so.0
# サンプルブラウザ(Wayland セッションで)
$ /usr/libexec/blinkgtk-0.1/blinkgtk_browser$ pkg-config --modversion blinkgtk-0.1 # 版数を表示する。-buildN は付かない (例 1.2.4)
$ pkg-config --cflags blinkgtk-0.1
-I/usr/include/blinkgtk-0.1 -I/usr/include/gtk-4.0 ... -pthread
$ pkg-config --libs blinkgtk-0.1
-L/usr/lib64 -L/usr/lib64/blinkgtk-0.1 -L/usr/lib64/blinkgtk-0.1/chromium \
-lblinkgtk-0.1 -lbase_allocator_partition_allocator_src_partition_alloc_allocator_shim ...重要: --libs に PartitionAlloc
allocator shim
(-lbase_allocator_partition_allocator_src_partition_alloc_allocator_shim)が
含まれます。BlinkGTK を組み込むアプリは 必ず pkg-config
経由でリンクしてください。
shim を実行ファイルに直接リンクしないと、Chromium 148
以降を元にした版では
ページの読み込みが確定せず、画面が黒いままになります。
$ python3 -c "import gi; gi.require_version('BlinkGTK','0.1'); from gi.repository import BlinkGTK; print('BlinkGTK OK')"
BlinkGTK OKBlinkGTK を組み込むアプリは pkg-config でビルドします(shim
の直接リンクが
自動で付与されます)。
cc my_app.c -o my_app $(pkg-config --cflags --libs blinkgtk-0.1)詳細は 組み込みガイド(ライフサイクル
/
WebView 埋め込み / GPU モード / 注入 等)を参照してください。
sudo dnf remove blinkgtk-bin blinkgtk-bin-devel blinkgtk-bin-girsudo apt remove libblinkgtk-0.1-0 libblinkgtk-0.1-devtarball は FHS
配置のため、展開したファイルを手動で削除します(パッケージ
管理を使う RPM/DEB を推奨)。主な配置先です。
/usr/lib64/libblinkgtk-0.1.so*/usr/lib64/blinkgtk-0.1//usr/libexec/blinkgtk-0.1//etc/ld.so.conf.d/blinkgtk-0.1.conf/usr/include/blinkgtk-0.1/(devel)/usr/lib64/pkgconfig/blinkgtk-0.1.pc(devel)。削除後に
sudo ldconfig。libblinkgtk-0.1.so.0: cannot open shared object fileld.so の検索パスに private ディレクトリが反映されていません。
sudo ldconfig # /etc/ld.so.conf.d/blinkgtk-0.1.conf を反映
ldconfig -p | grep libblinkgtk-0.1 # 解決を確認devel パッケージ未導入、または PKG_CONFIG_PATH
未設定です。
# devel を導入 (上記) するか、tarball 配置時は:
export PKG_CONFIG_PATH=/usr/lib64/pkgconfig:$PKG_CONFIG_PATH
pkg-config --modversion blinkgtk-0.1アプリの実行ファイルが allocator shim
を直接リンクしていません。pkg-config 経由で
リンクしてください(pkg-config --libs blinkgtk-0.1
が shim を含みます)。
確認:
readelf -d ./my_app | grep NEEDED | grep partition_alloc_allocator_shim
が 1 件あること。
Namespace BlinkGTK not available)gir パッケージ未導入、または GI_TYPELIB_PATH
未設定です。
# gir を導入 (上記) するか、tarball 配置時は:
export GI_TYPELIB_PATH=/usr/lib64/girepository-1.0:$GI_TYPELIB_PATHFailed to open Wayland displayBlinkGTK は Wayland のみ対応です(X11 非対応)。
echo $WAYLAND_DISPLAY # 空なら Wayland セッションで再ログインCopyright 2026 BlinkGTK Project
SPDX-License-Identifier: BSD-3-Clause