Linux互換性
LinuxでスムーズにするためのZen considerations
なぜLinux対応が重要か
Linuxは動画制作のプロフェッショナル環境(VFXスタジオ、放送局)で広く使われています。 また、プライバシーを重視するクリエイターにも選ばれています。
ディストリビューション
- ・ Ubuntu / Linux Mint
- ・ Fedora
- ・ Arch Linux
- ・ Debian
デスクトップ環境
- ・ GNOME
- ・ KDE Plasma
- ・ XFCE
- ・ Cinnamon
ディスプレイサーバー
- ・ X11(レガシー)
- ・ Wayland(モダン)
TauriのLinuxアドバンテージ
WebKitGTK使用
TauriはLinuxでWebKitGTKを使用。GTKアプリケーションとしてネイティブに統合され、 システムテーマ、フォント、アクセシビリティ設定を自動的に尊重します。
Electronとの比較
Tauri
- ・ ~3MBのバイナリ
- ・ システムWebViewを使用
- ・ メモリ効率が良い
Electron
- ・ ~85MBのバイナリ
- ・ Chromiumをバンドル
- ・ メモリ使用量が多い
Linuxパッケージング
AppImage(推奨)
ディストリビューション非依存。ダウンロードして実行するだけ。
chmod +x app.AppImage && ./app.AppImage
Flatpak
サンドボックス化された配布。Flathubで公開可能。
flatpak install flathub com.example.app
.deb(Debian/Ubuntu)
Debian系ディストリビューション向け。
sudo dpkg -i app.deb
.rpm(Fedora/RHEL)
Red Hat系ディストリビューション向け。
sudo rpm -i app.rpm
FFmpegの配布戦略
オプション1: システムFFmpegを使用
ほとんどのLinuxディストリビューションにFFmpegがプリインストールまたは簡単にインストール可能。 依存関係として記載し、ユーザーにインストールを促す。
オプション2: バンドル
FFmpegの静的ビルドをアプリにバンドル。バイナリサイズは増えるが、 バージョン管理が容易。
Linux開発の注意点
Wayland対応
Waylandでは一部のAPI(グローバルショートカットなど)が異なる動作をする場合があります。
ファイルダイアログ
デスクトップ環境によってファイルダイアログの外観が異なります。 Tauriのネイティブダイアログを使用することで自動的に対応。
GPUアクセラレーション
NVIDIAとAMD/Intelでドライバーの状況が異なります。 VA-API、VDPAU、NVENCの対応を考慮。