JetBrains / compose-multiplatform

Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
https://jetbrains.com/lp/compose-multiplatform
Apache License 2.0
15.85k stars 1.15k forks source link

Cannot modify image assets used in MSI installer #2335

Open sebkur opened 1 year ago

sebkur commented 1 year ago

I'm successfully packaging MSI files using the Gradle plugin, however I cannot yet specify the images used in the MSI installer.

sebnuc commented 1 year ago

These are screenshots from the MSI while installing it:

Screenshot 2022-09-21 125019 Screenshot 2022-09-21 125042

sebnuc commented 1 year ago

This is what I'm trying to achieve, swap out the images on the left in the first screen and the banner at the top of the second screen:

Screenshot 2022-09-21 125500 Screenshot 2022-09-21 125517

sebkur commented 1 year ago

As explained in the WIX documentation it is possible to set those images using these options in main.wxs, for example like this:

<?define JpResources = $(env.GRADLE_PROJECT_DIR)\src\jpackage\assets?>
<WixVariable Id="WixUIBannerBmp" Value="$(var.JpResources)\banner.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="$(var.JpResources)\dialog.bmp" />

in order for this to work two things are necessary:

  1. we need to be able to add additional resources into the directory passed to jpackage with flag --resource-dir (#1972)
  2. we need to have some way to define an environment variable that is accessible from thw WX toolchain process
sebkur commented 1 year ago

I have a solution for 1.) ready here at: #2331 and a solution for 2.) at #2336.

okushnikov commented 1 month ago

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.