macOSにおけるTauriのパスヘルパー関数のマッピング
Michael Charles Aubrey // Mon Nov 11 2024
Tauri v2 を使用してデスクトップアプリを開発していますが、ファイルシステム API の扱いに苦労していました。Tauri は-apps/api/path
を通じて、appCacheDir()
やappConfigDir()
のような一般的なディレクトリを見つけるためのヘルパー関数を提供しています。公式ドキュメントは存在しますが、最初は見つけられず、また各パスが実際にどこにマッピングされるのかを一目で理解しづらい構造になっています。
この記事では、tauri.conf.json
にcom.example.myapp
のような識別子を設定したと仮定します。
macOS で各ヘルパー関数がどこを指しているのかを正確に把握するため、小さなユーティリティ関数を作成しました。実行後、以下のような結果が得られました:
appCacheDir() -> /Users/{username}/Library/Caches/com.example.myapp
appConfigDir() -> /Users/{username}/Library/Application Support/com.example.myapp
appDataDir() -> /Users/{username}/Library/Application Support/com.example.myapp
appLocalDataDir() -> /Users/{username}/Library/Application Support/com.example.myapp
appLogDir() -> /Users/{username}/Library/Logs/com.example.myapp
audioDir() -> /Users/{username}/Music
cacheDir() -> /Users/{username}/Library/Caches
configDir() -> /Users/{username}/Library/Application Support
dataDir() -> /Users/{username}/Library/Application Support
desktopDir() -> /Users/{username}/Desktop
documentDir() -> /Users/{username}/Documents
downloadDir() -> /Users/{username}/Downloads
executableDir() -> Error: unknown path
fontDir() -> /Users/{username}/Library/Fonts
homeDir() -> /Users/{username}
localDataDir() -> /Users/{username}/Library/Application Support
pictureDir() -> /Users/{username}/Pictures
publicDir() -> /Users/{username}/Public
resourceDir() -> /Users/{username}/Projects/personal/myapp/src-tauri/target/debug
tempDir() -> /var/folders/wk/{temp_folder}/T/
templateDir() -> Error: unknown path
videoDir() -> /Users/{username}/Movies
注目すべき点:
- アプリ固有のディレクトリ(
appCacheDir
、appConfigDir
など)は、標準のシステムパスにアプリの識別子が追加されます executableDir
とtemplateDir
は macOS では利用できませんresourceDir
は開発中、デバッグビルドディレクトリを指します- 複数のディレクトリが同じ場所を指すことがあります(例:
appConfigDir
、appDataDir
、appLocalDataDir
)
これらのパスは Linux や特に Windows では異なる可能性があります。時間が見つかれば、これらのプラットフォームについても続編を書くかもしれません。とりあえず、macOS で Tauri を使用している方々の参考になれば幸いです。