Tauri

Tauri 2.0 安定版へのマイグレーション手順と環境構築ガイド

ⓘ本ページはプロモーションが含まれています

スポンサードリンク

事前準備と開発環境の構築

Tauri 2.0 の安定版へ移行するには、まず Node.js·Rust·Cargo を公式が推奨する最新版に合わせることが必須です。バージョンが揃っていないとビルドエラーや実行時例外が頻発します。このセクションでは、macOS・Windows・Linux のそれぞれで安全に環境を構築できる手順を示します。

Node.js・Rust・Cargo のインストール

各 OS で推奨されているコマンド例と補足情報です。実行前に既存の古いバージョンが残っていないか確認し、必要に応じてクリーンアップしてください。

OS コマンド例 補足
macOS (Intel / Apple Silicon) bash<br># Homebrew がインストール済みであることを前提とします。<br>brew install node@20<br>curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh -s -- -y<br>source $HOME/.cargo/env<br> node@20 は LTS 系の 20.x 系をインストールします。
Windows 10/11 powershell<br># winget が利用できる環境(Windows Terminal 推奨)<br>winget install OpenJS.NodeJS --exact --version 20<br>Invoke-WebRequest https://win.rustup.rs -OutFile rustup-init.exe; .\rustup-init.exe -y<br> winget が使えない場合は https://nodejs.org/dist/v20.x/ のインストーラを直接ダウンロードしてください。
Ubuntu 24.04 (Linux) bash<br># Node.js 公式スクリプトで LTS を取得<br>curl -fsSL https://deb.nodesource.com/setup_20.x \| sudo -E bash -<br>sudo apt-get install -y nodejs<br># Rust のインストール<br>curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh -s -- -y<br>source $HOME/.cargo/env<br> apt パッケージは古いことがあるため、公式スクリプト使用を推奨します。

インストール後にバージョンを確認し、Node 20.x, npm 10.x 以上, rustc 1.78.x, cargo 1.78.x が表示されれば成功です。

OS 別依存ライブラリの取得

Tauri が内部で利用する WebView とネイティブ UI コンポーネントには、OS ごとの追加パッケージが必要です。下表は最小構成で必ずインストールすべきものをまとめたものです。

OS 必要なパッケージ・取得方法
macOS Xcode Command Line Tools:xcode-select --install
Apple Developer Program の証明書はコードサイン時に必須です。
Windows WebView2 Runtime(Microsoft Edge WebView2):https://go.microsoft.com/fwlink/p/?LinkId=2124703
Visual C++ Redistributable (vc_redist.x64.exe) を公式サイトからインストール。
Linux (Ubuntu/Debian) bash<br>sudo apt-get install -y libgtk-3-dev libappindicator3-dev librsvg2-dev libssl-dev pkg-config<br>
Arch 系の場合は pacman -S gtk3 webkit2gtk など同等パッケージをインストールしてください。

これらの依存関係は、公式ドキュメントの 「開始ガイド」https://v2.tauri.app/ja/start/)でも同様に記載されていますので、併せて確認してください。


公式マイグレーションツールで安全に移行

Tauri 2.0 のベータから RC/安定版へは、tauri migrate コマンドを利用すると手動ミスが大幅に減ります。以下では実行手順と主要オプション、さらに安全に作業するためのバックアップ・検証フローを紹介します。

taur i migrate の基本的な使い方

まずは最新の tauri‑cli を取得し、プロジェクトルートで dry‑run を実行してください。dry‑run は変更点だけをレポートし、ファイルを書き換えません。

オプション 説明
--dry-run 実際の書き換えを行わず、差分レポートだけを表示。必須ステップです。
--force 既存のバックアップがあっても上書きしてマイグレーションを強制実行。
--skip-webview WebView の自動更新を抑止し、手動で対応したい場合に使用します。

本番適用例

バックアップと検証のベストプラクティス

  1. Git コミット:作業ブランチを作成し、現在の状態をコミットしておく
    bash
    git checkout -b migrate/tauri-2.0
    git commit -am "pre‑migrate backup"
  2. 依存ツリーのスナップショット:Rust と npm の依存関係をファイルに保存
    bash
    cargo tree > cargo-tree-before.txt
    npm ls --depth=0 > npm-deps-before.txt
  3. dry‑run 結果の確認:削除・置換が必要な項目が無いかレポートを精査
  4. ローカルビルドで検証tauri dev がエラーなく起動すれば、マイグレーションは成功です

失敗した場合は git reset --hard HEAD~1 で直前のコミットに戻せます。


設定ファイルと依存パッケージの更新ポイント

マイグレーション後に注意すべきは Cargo.tomltauri.conf.json の差分です。自動変換された内容を手作業で確認し、必要に応じて調整してください。

Cargo.toml の主な変更点

変更前 変更後(RC) 補足
tauri = { version = "2.0.0-beta.4", features = ["api-all"] } tauri = { version = "2.0.0-rc.1", features = ["api-all"], default-features = false } RC では default‑features が false に変更。必要な機能は明示的に列挙します。
serde = "1.0"(ベータ用) serde = { version = "1.0", features = ["derive"] } derive が必須になるため、記述を統一しました。
tauri-build = "2.0.0-beta.4" tauri-build = "2.0.0-rc.1" ビルドスクリプトのバージョン合わせです。

ポイントapi-all は引き続き利用可能ですが、ツリ―シェイキング向上のため個別 API のインポートが推奨されます。

tauri.conf.json の差分とサンプル

項目 ベータ版 RC/安定版
build.beforeBuildCommand 任意文字列(省略可) 必須:例 "npm run build"
security.csp "default-src 'self'"(省略可) デフォルトは null に変更。カスタム CSP が必要なら明示します。
bundle.mac.signingIdentity 未設定 必須:Apple Developer ID の文字列を記入。
bundle.windows.msix false true にすると MSIX パッケージが生成されます。
tauri.updater なし 新規項目 updater.active = true が追加され、自己更新機能が有効化します。

差分サンプル(JSON)

npm / yarn / pnpm パッケージのバージョンアップ手順

  1. 対象パッケージを確認
    bash
    npm outdated | grep @tauri-apps
  2. npm の場合は一括更新
    bash
    npm install @tauri-apps/cli@2.0.0-rc.1 @tauri-apps/api@2.0.0-rc.1 --save-dev
  3. yarn / pnpm でも同様に
  4. Yarn: yarn add -D @tauri-apps/cli@^2.0.0-rc @tauri-apps/api@^2.0.0-rc
  5. PNPM: pnpm add -D @tauri-apps/cli@2.0.0-rc.1 @tauri-apps/api@2.0.0-rc.1

必ず package.jsonengines.node">=20" であることを確認してください。


マルチプラットフォームビルドとデプロイ手順

Tauri 2.0 は macOS、Windows、Linux の主要ディストリビューション向けに コードサイン・パッケージング を自動化します。以下では各 OS で必要な前提条件と実際のビルドコマンド例を示します。

macOS:codesign と notarization

  1. 証明書取得(Apple Developer → Developer ID Application
  2. 環境変数設定(CI の場合はシークレットとして管理)
    bash
    export APPLE_DEVELOPER_CERT="Developer ID Application: Your Name (TEAMID)"
    export NOTARY_API_KEY="<APIキー>"
    export NOTARY_ISSUER_ID="<Issuer ID>"
  3. ビルド & サイン
    bash
    tauri build --target aarch64-apple-darwin
    codesign -s "$APPLE_DEVELOPER_CERT" target/release/bundle/macos/YourApp.app \
    --deep --timestamp --options runtime
  4. Notarization(Apple の notarytool
    bash
    xcrun notarytool submit target/release/bundle/macos/YourApp.zip \
    --key "$NOTARY_API_KEY" --issuer "$NOTARY_ISSUER_ID" --wait

ポイント--timestamp--options runtime を忘れないと notarization が失敗します。

Windows:MSIX / MSI の生成と署名

  1. Windows SDK + signtool(Visual Studio Installer 推奨)をインストール
  2. コードサイン証明書の準備.pfx ファイルとパスワード)
  3. ビルド & パッケージ生成
    powershell
    tauri build --target x86_64-pc-windows-msvc
  4. 署名(MSIX が有効なら自動で生成された .msix、それ以外は .msi
    powershell
    $certPath = "C:\certs\mycode.pfx"
    $pwd = "yourPassword"
    signtool sign /f $certPath /p $pwd
    /tr http://timestamp.digicert.com /td sha256 /fd sha256

    target\release\bundle\msi\YourApp_1.0.0_x64_en-US.msi

tauri.conf.jsonbundle.windows.msix: true が有効になっていれば、MSIX パッケージが自動生成されます。

Linux:AppImage と deb パッケージ

Linux 環境では、AppImage が最も汎用的ですが、配布対象が Debian 系なら deb 署名を併用すると信頼性が向上します。


テスト・CI/CD とリリース作業のベストプラクティス

安定版を公開する前に ローカルテスト → 自動化パイプライン → リリースノート作成 のフローを確立しておくと、ヒューマンエラーが激減します。ここでは推奨手順と実装例を示します。

ローカルテストとデバッグフロー

手順 コマンド 目的
ユニットテスト(Rust) cargo test ビジネスロジックの正当性確認
統合テスト(フロントエンド) npm run test または pnpm exec vitest UI/JS API の動作検証
Tauri アプリ起動デバッグ tauri dev --verbose WebView 起動時の詳細ログ取得
ビルド検証(デバッグビルド) tauri build --debug 出力サイズ・依存関係を確認

すべてが成功したら、次は CI へ移行します。

GitHub Actions 推奨ワークフロー例

以下の YAML は タグプッシュ (v2.0.x) 時に macOS・Windows・Ubuntu の全 OS でビルドし、GitHub Releases に自動アップロードするパイプラインです。シークレットは APPLE_DEVELOPER_CERT, NOTARY_API_KEY, NOTARY_ISSUER_ID, WINDOWS_PFX などを使用してください。

リリースノート作成・タグ付け・GitHub Releases

  1. CHANGELOG.md に新バージョンの項目を追加(例:## [v2.0.0] - 2026-06-24)。
  2. Git タグ作成
    bash
    git tag -a v2.0.0 -m "Release Tauri 2.0 stable"
    git push origin v2.0.0
  3. 手動でリリースページを作る場合は、New release → Draft に切り替えて CHANGELOG の該当セクションを貼り付け、先ほどのビルドアセット(.dmg, .msi, .AppImage, .deb)を添付します。
  4. CI が有効なリポジトリでは上記タグプッシュだけで自動的に GitHub Releases が生成されます。

よくあるエラーと対処法(Q&A)

質問 回答
依存関係の解決エラー (cargo: failed to select a version for …) cargo update -p <crate> でロックファイルを更新し、tauri migrate --force を再実行。Rust ツールチェーンは必ず最新(1.78)にしてください。
WebView2 が見つからない (Could not find Webview2 runtime) Windows に Microsoft Edge WebView2 Runtime が未インストールです。公式インストーラ https://go.microsoft.com/fwlink/p/?LinkId=2124703 を実行し、再起動後にビルドしてください。
macOS の notarization が失敗 (The Notarization request was rejected) 証明書の有効期限切れや codesign--timestamp が抜けていると発生します。証明書を更新し、サインコマンドに必ず --timestamp を付与してください。
Linux の AppImage が起動しない (Permission denied) ビルド後に実行権限が付与されていません。CI の最後のステップで chmod +x *.AppImage を追加しましょう。

まとめ

本稿では、Tauri 2.0 ベータ → 安定版 への移行に必要な 環境構築・マイグレーション・設定更新・マルチプラットフォームビルド・CI/CD の全工程を網羅しました。ポイントは次のとおりです。

  1. Node 20 LTS、Rust 1.78、Cargo 1.78 を各 OS で統一的にインストールする。
  2. tauri migrate --dry-run で変更点を事前確認し、Git バックアップで安全性を確保。
  3. Cargo.toml と tauri.conf.json の差分を手動でもチェックし、npm/yarn/pnpm のパッケージは RC 系に統一。
  4. OS 毎のコードサイン・ notarization 手順を正しく設定し、CI で自動化する。
  5. ローカルテスト → GitHub Actions → 自動リリースというフローで品質とデプロイ速度を最大化。

上記手順に沿って作業すれば、Tauri 2.0 の安定版へスムーズかつ安全に移行できるはずです。ぜひ本チェックリストを活用し、次世代デスクトップアプリの開発・配布を加速させてください。

スポンサードリンク

-Tauri