デスクトップアプリ作成に使用できるフレームワーク「Tauri」の開発チームは、最新版となる「Tauri 1.3」を5月3日(現地時間)に公開した。TauriはApache Licence 2.0とMITライセンスで公開しているオープンソース・ソフトウェアだ。
Tauriは「Electron」と同様、Web技術をデスクトップアプリ作成に応用可能にするフレームワーク。ElectronではメインプロセスをJavaScriptで記述するが、TauriではRustで記述する。また、Electronでは完成したアプリケーションに実行環境としてWebブラウザ「Chromium」とNode.jsを付属させるが、Tauriでは実行環境として各OSが標準で備えているWebブラウザ(WebView)を使用する。完成したアプリケーションに実行環境を付属させる必要がないため、アプリケーションのファイルサイズが小さくなり、実行時にメモリ消費量も少なくなる。TauriはWindows、macOS、Linuxに対応する。
Tauri 1.3では、外部ドメインからTauriのプロセス間通信(IPC:Inter-Process Communication)に介入できるようになった。TauriのIPCは、Rustで記述するメインプロセスと、フロントエンドで動作するプログラムの間の通信を指す。
この機能の提案があったときは、IPCを外部のどんなドメインにも解放する案もあったが、どんな攻撃を受けるか分からないということで、設定ファイルで指定した外部ドメインからのアクセスのみを許可することになった。
以前のバージョンでは、一部の開発者がTauriの脆弱性を利用して、今回新たに加わった機能を実現していたが、開発チームはこのような機能を実装している開発者に、Tauri 1.3へ一刻も早くアップデートすることを強く勧めている。そして、この機能が安全対策装置をまったく装備せずにレーシングカーを走らせるようなものであるとし、使用時には本当に必要なのかをよく検討し、実装時には細心の注意を払うように呼びかけている。
そしてTauri 1.3からはWindows向けアプリケーションのインストーラーを作れるようになった。これは、オープンソースのNullsoft Scriptable Install System(NSIS)を利用した機能だ。NSISはmacOSやLinuxでも動作するため、macOSやLinuxでWindows向けアプリケーションのインストーラーを作成することも可能だ。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です