デスクトップにショートカットを作成する

Recipe ID: sys-023

アプリのインストール時に、デスクトップにショートカットアイコンを作成する方法を解説します。
これはコードによる動的な作成ではなく、インストーラー(Bundle)の設定によって行います。

前提条件

Permissions (権限) の設定

src-tauri/capabilities/default.json に以下の権限を追加します。

{
  "permissions": [
    ...,
    "os-info:default"
  ]
}

解説

src-tauri/tauri.conf.json (または tauri.conf.json5/toml) の bundle セクションで設定します。
ターゲットとするプラットフォーム(Windows, Linux, macOS)ごとに設定が異なります。
※ macOS では通常、ユーザーが手動で Dock に追加するため、デスクトップショートカットの概念は Windows/Linux と異なります。

設定方法

ビルド設定(tauri.conf.json)を編集します。

{
  "bundle": {
    "active": true,
    "targets": "all",
    "icon": [
      "icons/32x32.png",
      "icons/128x128.png",
      "icons/128x128@2x.png",
      "icons/icon.icns",
      "icons/icon.ico"
    ],
    "windows": {
      "wix": {
        "language": ["en-US", "ja-JP"]
      },
      "nsis": {
        "installMode": "currentUser",
        "createDesktopShortcut": true,  
        "createStartMenuShortcut": true
      }
    },
    "linux": {
      "deb": {
        "depends": []
      },
      "appimage": {
        "bundleMedia": true
      }
    }
  }
}

Windows (NSIS)

Windows の主なインストーラー形式である NSIS では、createDesktopShortcut オプションを true に設定するだけです。
デフォルトで true の場合もありますが、明示的に記述することで制御できます。

  • "createDesktopShortcut": true: インストール時にデスクトップにショートカットを作成するかどうかをユーザーに尋ねるチェックボックスを表示(または強制作成)します。

Linux

Linux の .deb パッケージなどでは、インストール時に /usr/share/applications/.desktop ファイルが配置され、アプリ一覧には表示されますが、デスクトップ画面へのショートカット配置は通常ユーザーの操作に委ねられます(ディストリビューションのポリシーによる)。

注意点

アプリの初回起動時や実行中にプログラムから動的にショートカットを作成したい場合は、Rust でファイルシステム操作や Windows API (mslink クレートなど) を使用する必要がありますが、ウイルス対策ソフトに誤検知されるリスクがあるため、インストーラーによる作成が推奨されます。