Murasaki
ビルド & 配布

CLI リファレンス

dev、build、bundle、installer など、Murasaki のすべてのコマンド。

murasaki dev         Vite の開発サーバー + ネイティブウィンドウを起動する(HMR、Fast Refresh)
murasaki build       本番用の Vite ビルド → dist/client
murasaki bundle      現在のプラットフォーム向けのネイティブアプリフォルダ / .app
murasaki installer   現在のプラットフォーム向けの配布用インストーラー
murasaki init        Rust ツールチェーンをインストールする(@murasakijs/native 自体をいじる場合のみ)
murasaki icon        1つの PNG から .icns / .ico / .png を生成する
murasaki release     自動更新マニフェストのヘルパー
murasaki help        このヘルプを表示する

murasaki bundlemurasaki installer は、macOSWindows で本物の インストーラを生成します。Linux のパッケージングはロードマップに含まれています(現在は 「まだサポートされていません」というメッセージが表示されます)。murasaki dev 自体は macOS、Windows、Linux で動作します。

murasaki dev

子プロセスで Vite の開発サーバーを起動し、それを指すネイティブウィンドウをアタッチしま す — React Fast Refresh + HMR は通常どおり動作します。編集して保存すると、ウィンドウが 更新されます。config.devPort(デフォルト 5178)で実行され、そのポートが使用中なら 自動的にインクリメントされます。

murasaki build

本番用の Vite ビルド → dist/client

murasaki bundle

dist/client + コンパイル済みのサーバーアクションレジストリ + ポータブルな Node ラン タイム + ネイティブランチャーバイナリを dist/bundle/ にパッケージングします — macOS では <productName>.app、Windows では <productName>.exe を含む <productName>/ フォルダになります。

murasaki bundle                       # ホストのプラットフォーム + アーキテクチャ、未署名
murasaki bundle --arch x64            # クロスアーキテクチャ(macOS): Apple Silicon 上で x64 の .app
murasaki bundle --target win32-arm64  # クロスターゲット: arm64 の Windows バンドル
murasaki bundle --sign                # macOS Developer ID / Windows Authenticode 署名
murasaki bundle --no-build            # 既存の dist/client を再利用する
  • --arch arm64|x64 / --target <platform>-<arch> — 対象アーキテクチャ / プラットフォーム(デフォルトはホスト)。Windows は win32-x64 / win32-arm64
  • --sign — macOS では .app を Developer ID 署名し、Windows では portable ZIP 作成前に app executable を Authenticode 署名します。Windows 署名は SignTool がある Windows 上で実行します。詳しくは Distributionを参照してください。
  • --no-builddist/client がすでに存在する場合、Vite の再ビルドをスキップする。

murasaki installer

bundle の出力を、対象プラットフォーム向けの配布可能なインストーラに変換します: macOS ではドラッグインストール用のスタイル付き .dmg (dist/<productName>-<version>.dmg、Finder のスタイリングに失敗した場合はプレーンな DMG にフォールバック)、Windows ではポータブル .zip、NSIS .exe、MSI .msi

murasaki installer                     # ホストプラットフォーム向けインストーラ(最初に再バンドル)
murasaki installer --target win32-x64  # Windows x64 のインストーラ
murasaki installer --sign --notarize   # macOS: Developer ID 署名 + 公証 + ステープル
murasaki installer --target win32-x64 --sign # Windows: app + NSIS + MSI を署名
murasaki installer --no-build          # 既存の dist/bundle を再利用する
  • --target <platform>-<arch> / --arch arm64|x64bundle に転送されます。
  • --sign — macOS の Developer ID または Windows の Authenticode 署名。 Windows では app executable、NSIS setup、MSI を署名して検証します。
  • --notarize — macOS のみ。署名済みの .dmg を Apple の notary サービスに 提出し、チケットをステープルします(--notarize--sign が必須)。

murasaki init

rustc の有無を確認し、見つからない場合はインストールコマンドを表示します。 @murasakijs/native 自体をいじる場合にのみ必要です。Murasaki のエンドユーザーが Rust を必要とすることは決してありません — ビルド済みバイナリが npm から降ってきます。

murasaki icon

murasaki icon assets/logo.png

1つの 1024px の PNG から、dist/icons/icon.icns(macOS、sips + iconutil 経由)を 生成します。このスタンドアロンコマンドは現時点では macOS 以外で PNG のみです。ただし 通常は不要です — murasaki bundleconfig.icon からプラットフォームのアイコンを 自動生成・埋め込みします: macOS では .icns、Windows では .ico(.exe に埋め込み)。

murasaki release

murasaki release --keygen [--force]
murasaki release --manifest --base-url <url> --version <v> [--notes <md>] [--mandatory]
murasaki release --sign

署名付き自動更新を公開するための、3つの独立したモードです — 全体の流れについては 自動更新ガイドを参照してください。

  • --keygen — 更新マニフェストの署名に使う Ed25519 の鍵ペアを生成します。 .murasaki/update-key.pub(コミットしてください)と .murasaki/update-key (自動的に gitignore されます)を書き出し、秘密鍵を一度だけ表示して MURASAKI_UPDATE_KEY という GitHub シークレットとして保存する手順を案内します。 --force を指定しない限り、既存の鍵を上書きすることはありません。
  • --manifestdist/ 配下からこのバージョンの成果物(macOS の .app.zip、 Windows の -setup.exe)を探してハッシュ化し、dist/latest.json を書き出します。 見つからないターゲットはエラーではなくスキップされます。
  • --signdist/latest.json を署名して dist/latest.json.sig を生成します。 鍵は $MURASAKI_UPDATE_KEY、なければ .murasaki/update-key から読み込まれます。

--generate-manifest は、--manifest の非推奨エイリアスとして引き続き動作します。

次へ

GitHub でこのページを改善

On this page