renmori gui
renmori gui は Tkinter ベースのネイティブウィンドウを開き、ターミナルを使わずに保護、検証、設定ファイルの編集を行えるようにします。
GUI は 1.1.0 から提供されており、独自の保護ロジックは持たず、ターミナルと同じ renmori protect と renmori verify を子プロセスとして実行します。そのため、プラグインの自動ダウンロード、検証、JSON 形式の結果はいずれも CLI と同じ動作になります。
構文
表示言語は CLI と同じ規則で決まり、--lang、環境変数 RENMORI_LANG、システムのロケールの順に参照されます。GUI が対応する言語は英語と中国語のみで、日本語を含むその他のロケールでは英語で表示されるため、本ページでは画面上の表記を英語のまま記載します。なお、--no-color と --quiet は GUI には影響しません。
動作環境
Tkinter は CPython に同梱されているため、GUI による追加の依存関係はありません。また、renmori gui を実行しない限り CLI が Tkinter を読み込むこともありません。ただし、以下の環境では個別の対応が必要です。
起動できない場合、renmori gui は理由を stderr に出力し、終了コード 2 で終了します。
ウィンドウの構成
ウィンドウには Protect、Verify、Config の 3 つのタブがあり、下部にステータスバーがあります。ステータスバーには Ready、Running… が順に表示され、ジョブ終了時に ✓ Done または ✗ Failed が、設定ファイルの保存後には保存先のパスが表示されます。
Protect タブと Verify タブの下部にはそれぞれログ領域があります。ジョブを開始すると、先頭行に実際に実行されるコマンド全体($ で始まる行)が表示され、続いて stderr の進捗情報と stdout 最終行の JSON 結果を含む CLI の出力がすべてリアルタイムに表示されます。この内容は CLI の生の出力であり、そのままトラブルシューティングに利用できます。
同時に実行できるジョブは 1 つのみで、実行中は対応するボタンが無効になります。ジョブが終了するまでウィンドウを閉じないでください。
Protect タブ
Protect タブは renmori protect に対応します。
パス
オプション
Protect タブには除外リストと鍵の取得元の設定がありません。これらが必要な場合は、Config タブで renmori.toml を生成し、Config (-c) で指定するか、ビルドディレクトリに保存して自動検出させてください。
実行の流れ
- Protect をクリックすると、入力パスと出力パスを示す確認ダイアログが表示される
- 確認後、GUI は
-yを付けてrenmori protectを実行するため、CLI 側での確認は行われない - 初回のフル保護では、個別の確認なしにプラグインが直接ダウンロードされる。ダウンロードしたプラグインはリリースの
SHA256SUMSで検証された後にキャッシュされる。ネットワークに接続させたくない場合はRENMORI_PLUGINまたはRENMORI_NO_DOWNLOAD=1を設定する(保護強度とクローズドプラグイン を参照) - ジョブ終了時、終了コードが 0 かつ JSON 結果の
statusがokの場合にのみ、ステータスバーに ✓ Done が表示される
保護に成功した際のリリース案内はログ領域に出力されます。GUI では --no-hints、--quiet、--no-color は指定できません。
GUI は常に -y を渡すため、確認ダイアログが保護前の唯一の確認手順となります。その場で保護すると選択したディレクトリが上書きされるため、確認前にパスを確かめ、No backup (in-place) はオフのままにしてください。
Verify タブ
Verify タブは renmori verify に対応します。Browse… で renmori protect が生成した保護済みビルドのディレクトリを選択し、Verify をクリックすると検証が始まります。検証内容は CLI と同じで、コンテナのハッシュ、必須ファイルの有無、ディスク上に平文のスクリプトやアーカイブが残っていないかを確認し、結果はログ領域の末尾に JSON 形式で表示されます。
Config タブ
Config タブは renmori.toml のフォームエディターで、設定ファイルの生成、読み込み、保存を行います。Protect タブの設定には直接反映されないため、保存後に Protect タブの Config (-c) で指定するか、ビルドディレクトリに配置してください。各設定キーの詳細は 設定ファイル renmori.toml を参照してください。
フォームの項目
ボタン
注意事項
- プレビュー領域のテキストは表示専用であり、Save as… はフォームの内容から再生成してプレビューを上書きするため、プレビュー上で手動編集した内容は保存されない
- ファイルを読み込む際、フォームに反映されるのは上表のキーのみで、それ以外のキーやコメントは保存時に失われる
- 設定ファイルの読み込みには Python 3.11 以上または
tomliパッケージが必要。解析できない場合、GUI は理由を表示し、生のテキストをプレビュー領域に読み込む - 鍵の項目には環境変数名のみを記録し、鍵そのものを設定ファイルに書き込まない。CI での鍵管理は CI との連携 を参照
トラブルシューティング
関連ページ
renmori protect:全オプション、ファイル処理ルールと実行手順renmori verify:検証項目と使い方- 設定ファイル renmori.toml:全設定キーとマージルール
- 保護強度とクローズドプラグイン:プラグインの取得、検証とキャッシュ