Repository: tauri
Issue: [bug] After updating to 2.0, AppImage crashes on startup
Labels: type: bug,platform: Linux,status: needs triage

### Describe the bug

After updating tauri from 1.* to 2.0.3, the AppImage package crashes when launched.The deb package runs normally, but the file name under /usr/bin changes from lowercase eco-paste to uppercase EcoPaste, and the desktop file name also changes

### Reproduction

_No response_

### Expected behavior

_No response_

### Full `tauri info` output

```text
> eco-paste@0.2.0-beta.2 tauri /home/witt/codes/open-source/EcoPaste
> tauri "info"


[✔] Environment
    - OS: Manjaro 24.1.1 x86_64 (X64)
    ✔ webkit2gtk-4.1: 2.44.4
    ✔ rsvg2: 2.58.4
    ✔ rustc: 1.81.0 (eeb90cda1 2024-09-04)
    ✔ cargo: 1.81.0 (2dbb1af80 2024-08-20)
    ✔ rustup: 1.27.1 (2024-05-07)
    ✔ Rust toolchain: stable-x86_64-unknown-linux-gnu (default)
    - node: 22.9.0
    - pnpm: 9.12.1
    - yarn: 1.22.22
    - npm: 10.8.3

[-] Packages
    - tauri 🦀: 2.0.3
    - tauri-build 🦀: 2.0.1
    - wry 🦀: 0.46.0
    - tao 🦀: 0.30.3
    - @tauri-apps/api : 2.0.2
    - @tauri-apps/cli : 2.0.2 (outdated, latest: 2.0.3)

[-] Plugins
    - tauri-plugin-fs 🦀: 2.0.1
    - @tauri-apps/plugin-fs : 2.0.0
    - tauri-plugin-window-state 🦀: 2.0.1
    - @tauri-apps/plugin-window-state : not installed!
    - tauri-plugin-dialog 🦀: 2.0.1
    - @tauri-apps/plugin-dialog : 2.0.0
    - tauri-plugin-autostart 🦀: 2.0.1
    - @tauri-apps/plugin-autostart : 2.0.0
    - tauri-plugin-os 🦀: 2.0.1
    - @tauri-apps/plugin-os : 2.0.0
    - tauri-plugin-process 🦀: 2.0.1
    - @tauri-apps/plugin-process : 2.0.0
    - tauri-plugin-global-shortcut 🦀: 2.0.1
    - @tauri-apps/plugin-global-shortcut : 2.0.0
    - tauri-plugin-single-instance 🦀: 2.0.1
    - @tauri-apps/plugin-single-instance : not installed!
    - tauri-plugin-log 🦀: 2.0.1
    - @tauri-apps/plugin-log : 2.0.0
    - tauri-plugin-sql 🦀: 2.0.1
    - @tauri-apps/plugin-sql : 2.0.0
    - tauri-plugin-updater 🦀: 2.0.2
    - @tauri-apps/plugin-updater : 2.0.0
    - tauri-plugin-shell 🦀: 2.0.1
    - @tauri-apps/plugin-shell : 2.0.0

[-] App
    - build-type: bundle
    - CSP: unset
    - frontendDist: ../dist
    - devUrl: http://localhost:1420/
    - framework: React
    - bundler: Vite
```


### Stack trace

```text
Gtk-Message: 16:04:31.992: Failed to load module "xapp-gtk3-module"
Gtk-Message: 16:04:31.994: Failed to load module "appmenu-gtk-module"
Gtk-Message: 16:04:32.091: Failed to load module "appmenu-gtk-module"
[2024-10-14][08:04:32][async_io::driver][TRACE] sleeping for 10000 us
Gtk-Message: 16:04:32.385: Failed to load module "xapp-gtk3-module"
Gtk-Message: 16:04:32.388: Failed to load module "appmenu-gtk-module"
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
Gtk-Message: 16:04:32.428: Failed to load module "appmenu-gtk-module"
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][INFO] Set previous window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> Tauri App(0x8600003)
Gtk-Message: 16:04:32.962: Failed to load module "xapp-gtk3-module"
Gtk-Message: 16:04:32.964: Failed to load module "appmenu-gtk-module"
[2024-10-14][08:04:32][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x8600004 .
Gtk-Message: 16:04:32.991: Failed to load module "appmenu-gtk-module"
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x8600004 .
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="PRAGMA foreign_keys = ON; …" db.statement="\n\nPRAGMA foreign_keys = ON;\n" rows_affected=0 rows_returned=0 elapsed=4.993334ms elapsed_secs=0.004993334
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="CREATE TABLE IF NOT …" db.statement="\n\nCREATE TABLE IF NOT EXISTS history (\n  id TEXT PRIMARY KEY,\n  type TEXT,\n  [group] TEXT,\n  value TEXT,\n  search TEXT,\n  count INTEGER,\n  width INTEGER,\n  height INTEGER,\n  favorite INTEGER DEFAULT 0,\n  createTime TEXT,\n  note TEXT\n);\n" rows_affected=0 rows_returned=0 elapsed=3.43098ms elapsed_secs=0.00343098
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="UPDATE history SET type …" db.statement="\n\nUPDATE\n  history\nSET\n  type = ?\nWHERE\n  type = ?;\n" rows_affected=0 rows_returned=0 elapsed=624.198µs elapsed_secs=0.000624198
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="PRAGMA table_info(history)" db.statement="" rows_affected=0 rows_returned=11 elapsed=49.69µs elapsed_secs=4.969e-5
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="PRAGMA table_info(history)" db.statement="" rows_affected=0 rows_returned=11 elapsed=41.866µs elapsed_secs=4.1866e-5
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="PRAGMA table_info(history)" db.statement="" rows_affected=0 rows_returned=11 elapsed=37.618µs elapsed_secs=3.7618e-5
[2024-10-14][08:04:33][sqlx::query][DEBUG] summary="SELECT * FROM history …" db.statement="\n\nSELECT\n  *\nFROM\n  history\nORDER BY\n  createTime DESC;\n" rows_affected=0 rows_returned=848 elapsed=5.050968ms elapsed_secs=0.005050968
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x8600004 .
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x8600004 .
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][INFO] Set previous window -> ecopaste(0x460000c)
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> ecopaste(0x460000c)
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring same window -> ecopaste(0x460000c)
[2024-10-14][08:04:33][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
[2024-10-14][08:04:34][hyper_util::client::legacy::pool][TRACE] checkout waiting for idle connection: ("https", ecopaste-updater.ayangweb.cn)
[2024-10-14][08:04:34][reqwest::connect][DEBUG] starting new connection: https://ecopaste-updater.ayangweb.cn/
[2024-10-14][08:04:34][hyper_util::client::legacy::connect::http][TRACE] Http::connect; scheme=Some("https"), host=Some("ecopaste-updater.ayangweb.cn"), port=None
[2024-10-14][08:04:34][hyper_util::client::legacy::connect::dns][DEBUG] resolve; host=ecopaste-updater.ayangweb.cn
[2024-10-14][08:04:34][tracing::span][TRACE] -- resolve;
[2024-10-14][08:04:34][hyper_util::client::legacy::connect::dns][DEBUG] resolving host="ecopaste-updater.ayangweb.cn"
[2024-10-14][08:04:34][hyper_util::client::legacy::connect::http][DEBUG] connecting to 198.18.0.38:443
[2024-10-14][08:04:34][hyper_util::client::legacy::connect::http][DEBUG] connected to 198.18.0.38:443
thread 'main' panicked at /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libappindicator-sys-0.9.0/src/lib.rs:41:5:
Failed to load ayatana-appindicator3 or appindicator3 dynamic library
/usr/lib/libayatana-ido3-0.4.so.0: undefined symbol: g_once_init_leave_pointer
/usr/lib/libappindicator3.so.1: undefined symbol: g_once_init_leave_pointer
/usr/lib/libayatana-ido3-0.4.so.0: undefined symbol: g_once_init_leave_pointer
/usr/lib/libappindicator3.so: undefined symbol: g_once_init_leave_pointer
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'main' panicked at library/core/src/panicking.rs:221:5:
panic in a function that cannot unwind
stack backtrace:
   0:     0x63b2c4f49275 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h1b9dad2a88e955ff
   1:     0x63b2c4f7769b - core::fmt::write::h4b5a1270214bc4a7
   2:     0x63b2c4f44baf - std::io::Write::write_fmt::hd04af345a50c312d
   3:     0x63b2c4f4a711 - std::panicking::default_hook::{{closure}}::h96ab15e9936be7ed
   4:     0x63b2c4f4a3ec - std::panicking::default_hook::h3cacb9c27561ad33
   5:     0x63b2c4f4ad71 - std::panicking::rust_panic_with_hook::hfe205f6954b2c97b
   6:     0x63b2c4f4aba3 - std::panicking::begin_panic_handler::{{closure}}::h6cb44b3a50f28c44
   7:     0x63b2c4f49739 - std::sys::backtrace::__rust_end_short_backtrace::hf1c1f2a92799bb0e
   8:     0x63b2c4f4a864 - rust_begin_unwind
   9:     0x63b2c3d15335 - core::panicking::panic_nounwind_fmt::h4c4dc67d0bbc166c
  10:     0x63b2c3d153c2 - core::panicking::panic_nounwind::hb98133c151c787e4
  11:     0x63b2c3d15506 - core::panicking::panic_cannot_unwind::he9511e6e72319a3e
  12:     0x63b2c3f6d018 - webkit2gtk::auto::web_context::WebContextExt::register_uri_scheme::callback_func::hed0a6f2b6efa71a4
  13:     0x7a6a130fe11f - <unknown>
  14:     0x7a6a12feac6b - <unknown>
  15:     0x7a6a12feae02 - <unknown>
  16:     0x7a6a12bfac92 - <unknown>
  17:     0x7a6a12bed844 - <unknown>
[2024-10-14][08:04:34][tauri_plugin_eco_paste::commands::linux][TRACE] Ignoring empty window: 0x460000d .
  18:     0x7a6a12f30e0b - <unknown>
  19:     0x7a6a130001ec - <unknown>
  20:     0x7a6a12f279c5 - <unknown>
  21:     0x7a6a12f281f3 - <unknown>
  22:     0x7a6a111119fd - <unknown>
  23:     0x7a6a11171eed - <unknown>
  24:     0x7a6a11172833 - <unknown>
  25:     0x7a6a0f910c44 - g_main_context_dispatch
  26:     0x7a6a0f9662b8 - <unknown>
  27:     0x7a6a0f90e3e3 - g_main_context_iteration
  28:     0x7a6a11c48e15 - gtk_main_iteration_do
  29:     0x63b2c4de56bb - gtk::auto::functions::main_iteration_do::h7541efd08e9187c7
  30:     0x63b2c400c3ad - glib::main_context::<impl glib::auto::main_context::MainContext>::with_thread_default::h6405e8c8914ca731
  31:     0x63b2c3f99292 - tao::platform_impl::platform::event_loop::EventLoop<T>::run::h9fb77a922c70da90
  32:     0x63b2c3fbfc9b - tauri::app::App<R>::run::h73fc0f4519adc766
  33:     0x63b2c3d69a62 - eco_paste_lib::run::h9b8a408153ac76cc
  34:     0x63b2c3d15de3 - std::sys::backtrace::__rust_begin_short_backtrace::h8a60e01a37547afb
  35:     0x63b2c3d15dd9 - std::rt::lang_start::{{closure}}::hce8534108b64b78e
  36:     0x63b2c4f3bf80 - std::rt::lang_start_internal::h5e7c81cecd7f0954
  37:     0x63b2c3d15e35 - main
  38:     0x7a6a0f4bfe08 - <unknown>
  39:     0x7a6a0f4bfecc - __libc_start_main
  40:     0x63b2c3d15d05 - _start
  41:                0x0 - <unknown>
thread caused non-unwinding panic. aborting.
zsh: IOT instruction (core dumped)  ./EcoPaste_3c4964a_amd64.AppImage
```


### Additional context

_No response_