Crequency / KitX

An all-purpose toolbox app that connect everything.

Home Page:https://kitx.apps.crequency.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Installer] Rewrite cross-platform installer through other ui framework

Dynesshely opened this issue · comments

🪦 Is your feature request related to a problem? Please describe.

Previously, in order to make the installation package smaller, we chose to use the .NET Framework Winform framework to build the installation package, because the Windows operating system has a built-in low version of the .NET Framework runtime.

Today, we are abandoning the .NET Framework platform and embracing the .NET Core platform.
It's time to ditch the old installer and rewrite it using another small, cross-platform UI framework.

🪧 Describe the solution you'd like

First of all, I consider from the aspect of language:
We need to use a language that can be compiled to the native code of the platform. From this point of view, we do not consider using languages ​​like CSharp, Java, etc. that rely on virtual machines.
I recommend using the Rust language.

Secondly, I consider from the aspect of UI framework:
The Rust community has a small cross-platform UI framework such as egui, which may be suitable for developing a simple installation package.

🧾 Describe alternatives you've considered

Maybe we can consider other UI frameworks.

I personally still recommend rust with egui.

📎 Additional context

No response

In addition, considering that there are many desktop systems under the Linux platform, there may be some unexpected situations.

We can provide a command-line controlled installation process by splitting the core installation logic and interface parts.

Great! But someone must be proficient in rust.

Tracked by #265 .

How to specific version and profile to download ?
I test my idea:

image

Use universal id to fill positions, and we can replace them by patcher.