tauri-apps/tauri

[bug] The executable file name of the deb package changes after upgrading to 2.0

Closed this issue · 4 comments

Describe the bug

After I upgraded tauri to 2.0.3, the executable file name of the deb package became uppercase, but the 1.* version was lowercase. The following issues are worth discussing

  1. Linux strictly distinguishes uppercase and lowercase, and the executable file name is generally lowercase. Is this change appropriate?

  2. The uppercase and lowercase in the deb package do not affect installation and use, but the script when I build the AUR package from the deb package needs to be modified? This change should be clearly indicated in the upgrade document.

Reproduction

No response

Expected behavior

No response

Full tauri info output

> 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

No response

Additional context

No response

This is due to the newly added configuration property mainBinaryName, but the documentation is hard to find

Can you explain how did it change from lowercase to uppercase? I mean example of the name.

In 1.*, the deb binary used the productName in kebab-case format iirc. In v2, either the name from Cargo.toml or if mainBinaryName is set. tauri migrate command should've added mainBinaryName with the same value as your productName to keep the main binary name unchanged.

Can you explain how did it change from lowercase to uppercase? I mean example of the name.你能解释一下它是如何从小写变成大写的吗?我的意思是名字的例子。

In 1., the deb binary used the productName in kebab-case format iirc. In v2, either the name from Cargo.toml or if mainBinaryName is set. tauri migrate command should've added mainBinaryName with the same value as your productName to keep the main binary name unchanged.在 1. 中,deb 二进制文件使用短横线大小写格式 iirc 的productName 。在 v2 中,来自Cargo.toml的名称或设置了mainBinaryNametauri migrate命令应该添加mainBinaryName ,其值与您的productName相同,以保持主二进制文件名称不变。

Sorry, my description may have confused you.
My project name is EcoPaste, and the name in the package.json of the root directory is eco-paste. In the 1.0 version of tauri, /usr/bin/eco-paste is a binary file. After upgrading to 2.0, I followed the documentation to add "productName":"EcoPaste" and "mainBinaryName":"EcoPaste". I didn't realize that mainBinaryName was used in the 2.0 version. In my intuitive performance, it seemed that the project name was used and it was capitalized.

I see, so I guess this is not an bug, closing then.