wixsharp
gtk4-cross
wixsharp | gtk4-cross | |
---|---|---|
12 | 9 | |
1,028 | 55 | |
- | - | |
5.5 | 3.7 | |
6 days ago | 3 months ago | |
C# | Shell | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wixsharp
-
Twenty years maintaining the WiX Toolset
I can recommend Wixsharp (https://github.com/oleg-shilo/wixsharp), you no longer have to learn the insane wix xml syntax to create an installer.
-
In the year 2023, what is the best way to deploy/distribute a WPF Application?
Also try wix# (https://github.com/oleg-shilo/wixsharp) - it makes things much easier
-
Best option for getting a binary to cross-platform customers?
Windows: The Microsoft-recommended way is .msi files but, if you're not willing to pay for something like InstallShield or a professional "How to use WiX XML course", making them is going to be painful even with something like WiXSharp, so my advice is to offer a Zip file and an Inno Setup installer. (Which things like Chocolatey can build on)
-
Looking for easy way for distribution of crates
Wix# is better, but still not as easy, and it depends on .NET, which makes it a hassle to get set up in Wine compared to how, being written in Delphi and using itself as an installer, Inno Setup is practically Rust-like in how easy it is to set up in Wine.
-
How do I intergret cargo in Rust code
If you really want to bundle a compiler, my advice would be to just use an installer like Inno Setup or NSIS or the WiX Toolset via WixSharp and have it either download or bundle the installer for the compiler.
-
Forced static linking?
Speaking of MSI, I'd suggest using Wix# instead of WiX directly.
-
PEP 594 “Removing dead batteries from the standard library” accepted
The functionality in the msilib module is somewhat low-level anyway (it basically just opens the database for you and leaves the arcane incantations required for doing anything as an exercise for the reader) so it probably wouldn't be hugely difficult to replace it with ctypes calling msi.dll directly.
If I were to replace my msilib-based installer, I would migrate to Wix# [1], a fantastic high-level wrapper for WiX that lets you express your installer in a few lines of C# (and then generates the thousands of lines of XML that WiX needs, but you don't need to touch it). I wouldn't have used msilib if I had known about Wix# at the time.
[1] https://github.com/oleg-shilo/wixsharp
- What's the best way to deploy a desktop application?
- WinGet is terrible. I want AppGet back
-
Creating an installer for your app is super easy! Quick video showing how to create a setup file
Adding that folks should look into using WixSharp especially if there is a need to create a more customizable UI for the installer. The instructions for building the installer is all written in C# including any custom actions required by your installer project.
gtk4-cross
-
Inkscape (vector graphics editor) is hiring: Accelerating the GTK4 migration
I use it from rust, it works with libadwaita. Since it's rust I just run cargo in a docker container. https://github.com/MGlolenstine/gtk4-cross
-
Can I deploy GTK applications to windows, osx and linux in a self-contained way?
(Assuming GTK4) For Windows you could try gtk4-cross. It was pretty clunky to use for Vala but since they have a Rust-specific image it should be easier for your use case
-
How to bundle shared libraries to distribute Rust binaries
For gtk programs I just put the dll's in the same folder as the binary and distribute it as a zip. Not the most elegant, but it works. I use this docker image to do the bundling https://github.com/MGlolenstine/gtk4-cross
-
One year of Relm4
If you're willing to install docker it's really easy to build and package for windows. https://github.com/MGlolenstine/gtk4-cross
-
Cross compiling GTK 4 to x86_64-pc-windows-gnu
I'm guessing you're not using this Docker container? → https://github.com/MGlolenstine/gtk4-cross
-
Forced static linking?
You can just bundle the required DLL's in the same directory as the executable. They don't need to install anything. You can use this docker container to handle the bundling automatically for you https://github.com/MGlolenstine/gtk4-cross
-
Yet another question for a GUI framework (slint alternative?)
With gtk4 you can just bundle the libs. You can check out https://github.com/MGlolenstine/gtk4-cross for a docker container that handles cross-compiling to windows and packaging the libs.
-
GitHub actions for my project to automatically compile for Linux/Windows and create Windows-installer.
The image for cross compiling: gtk4-cross
-
Is there a reliable and documented GUI library out there?
Yeah, it's actually much easier to cross compile from linux to windows. If you only have windows you can use docker desktop and this container to cross compile https://hub.docker.com/r/etrombly/rust-crosscompile . It doesn't have gtk4 support yet though, someone forked it if you need gtk4 https://github.com/MGlolenstine/gtk4-cross
What are some alternatives?
Squirrel - An installation and update framework for Windows desktop apps
gtk4-rs-docker - This repository provides docker images for building libadwaita-rs, gtk-rs applications
wix3 - WiX Toolset v3.x
innosetup-docker - Docker image to create Windows installer executables with Inno Setup
oneget - PackageManagement (aka OneGet) is a package manager for Windows
druid - A data-first Rust-native UI design toolkit.
api-ms-win-core-path-HACK - Implementation of api-ms-win-core-path-l1-1-0.dll for Windows 7 based on Wine code
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.
winget-cli - WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface).
sycamore - A library for creating reactive web apps in Rust and WebAssembly
Versions - 📦 A Scoop bucket for alternative versions of apps.
Slint - Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript. [Moved to: https://github.com/slint-ui/slint]