Perfect! Will get that fixed and then we can do a final test before the version bump and the update script test 🙂
No idea how to get the executable in the root of the MWEdit directory using CPack but I’ll add it to the wishlist!
Edit:
Looks like it’ll take the . option to the destination setting. Will try that for the next test to clean up the layout some
Okay, made those changes: https://github.com/deathssoul/MWEdit/actions/runs/18993040962
All files should now go in MWEdit/ instead of MWEdit/bin/ and I updated the commands for shortcut creation. 🙂
That’s fine, and the shortcuts & start menu stuff returned. 🙂
Still, the user installation screens should make those optional, looks like you want the install dialogs with Wix Toolset for that. 🙂
CPack has an option, CPACK_WIX_PATCH_FILE, to add a WiX XML fragment to the files. We may be able to leverage that feature. Will take a look at that article when I get the chance and will poke around the web some as well. 🙂
There isn’t a whole lot of information regarding the features to use fragments, though. We may need to do some trial and error.
CMake sets up their shortcuts via template files: https://gitlab.kitware.com/cmake/cmake/-/tree/master/Utilities/Release/WiX?ref_type=heads
Not yet sure how they do it, I’m still analyzing things. It would help if this stuff were documented but alas.
Gimp, on the other hand, uses Inno Setup (as does LOOT) but Inno doesn’t create MSI files, which would be nice for integration. BOSS used NSIS but the syntax was pretty ugly.
Inno’s not bad – although someone at the VB forums often referred to it as No-No Setup. 😛
Seems the Wix toolset has all the info on the xml – have you seen this?
https://www.advancedinstaller.com/versus/wix-toolset/create-wix-custom-dialog-user-input.html
Yeah, we may need to forgo CPack as its feature set seems rather limiting. Its Inno support does look better than its WiX support, even though it is very much in the early stages (the docs definitely need some proof-reading). Wouldn’t give us the pretty MSI integration but the docs on using WiX (even the ones on the official Firegiant site) aren’t the best and it was hard for me to follow them when I read them yesterday. I’m just not very good at release engineering.
CPack also has decent NSIS support if we want to try to continue using it instead of simply splitting out the operation.
Inno and NSIS don’t generate msi packages apparently – however why not try MSIX creation in Advanced Installer Express from the MS Store? First up in the MS recommended list. Pretty sure it deals with basic things like startmenu and desktop shortcuts, and then a couple of extra goodies thrown in for good measure. Seems like they have a well-established forum for reference, too. 🙂
MSIX is for the Windows Store as opposed to a standard downloadable installer. May be something to consider down the road, however. It would require more work to get things running and I’m not entirely sure how to set the CI up for it. We can certainly add it to the tracker, though, as a long-term goal. It took Gimp years before they submitted it to the Windows Store, for instance 🙂
Edit: added to the tracker 🙂
I can ask the LOOT folks about the pros and cons as I’m sure they’ve done some consideration already. 🙂
Here’s the list of software that the Windows CI supports out of the box: https://github.com/actions/runner-images/blob/main/images/windows/Windows2025-Readme.md
There are some package managers in there but I’m unfamiliar with them so I’m not entirely sure how they work.
Anything in there that seems useful, in addition to what we’re already using? As wget isn’t included, we’re using aria2 which supports a similar syntax as wget.
Been a bit of a rough week so I haven’t been able to look too much into the installers yet. Hopefully next week will be better!
Hmmm, there’s Inno Setup on that list, but not NSIS. Only VS Enterprise is listed – no Community Edition is a bit of a drawback.
Oh blow, AIE won’t function on WS. In that case, a distant milestone, we wish for a MSIX installation for MWEdit tobe done in a sitting, no? There is this Python MSI Creator which might run on yours – can’t see much about shortcuts though. The Wix Toolset is free, but you have to be a one-time sponsor, willing here to throw in something – $10-20 dollars – but not per month. 😛 OTOH it does indeed look like a few more hoops to go through before things actually get going without VS, and the clocks are ticking.
TBQH the current MSI installer works well enough, if folks don’t like it, we can refer them to the above issue if need be – and they can have their own two cents worth in the comments.
Time to focus on MWEdit. 🙂
Looks like we have msitools over here. Will need to look into it
Looks like the fee is only required if the organization is making money so we should be good for now. 🙂
The biggest blocker to having support for other compilers at the moment is the generated code. VS uses its Class Wizard to generate it which isn’t supported by other setups. That’s still on the list. As I recall, MinGW required additional libraries to build stuff that makes heavy use of the Windows API so we’ll need to sort it all out when we get there.
Works for me. I’ll go ahead and start cleaning things up in preparation for 0.7.0 and then squash the CMake branch since the commit log is so messy. Afterwards, I’ll make a new commit bumping up the version number to 0.7.0.
For future versions, I’ll be setting things up to use CMake’s configure file command so that we can just pass the version number to the CMake build command. The code uses several different macros to handle the version number so we’ll need to do some hunting. It’ll also mean adjusting the resource file to use the variables as well but that’s a fairly simple matter (will reply to the resource file comment shortly!) 🙂
Edit:
Added a link to the cross-compilation issue 🙂
So, new error today: looks like SourceForge is blocking the automatic download of DevIL from the CI but I can grab it fine with wget locally. Will need to come up with a new way of getting it. I’d rather not add DevIL back into the repository if I can help it. And I was just about to publish version 0.7.0, too 🙁
Is it the SDK on this page? No problems this end – alright to upload it here?
Sure, we can mirror it. That would definitely help.
Redistribution is definitely allowed per the license:
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
Yep. Went ahead and uploaded it here. GitHub is cranking away now so I’ll fix the tags tomorrow and finish publishing the new version 🙂
And updated the description of the DevIL mirror to comply with the license
And 0.7.0 has been released 🙂
And all of the appropriate announcements have been made 🙂
Are you able to reproduce issue #38? Since it sounds like 0.6.3 is working, that mostly narrows it down to one of two things: missing Unicode support (not likely as abot is using ASCII) or the Windows API updates that had to be done. It also sounds similar to an issue I found while packaging 0.6.3 and put on the back burner as it was mostly worked around as part of #31: just using the same directory and ignoring the settings screen
I’ll go ahead and reversion it as an alpha release. It may take a while before it can be fixed if it’s more than just the API changes due to how the code is laid out.
Confirmed – Exception code: 0xc0000005 the Wer report doesn’t show too much info though.
Okay, I’ll put it on ice as soon as I get to the computer — probably tomorrow. Not sure what’s going on but I’ll take a look at the changes and see if they enlighten me. If not, it’ll probably stay in alpha until I finish modernizing the code as it should go away as we switch GUI toolkits and get rid of the nonstandard stuff, as well as fixing up the various warnings. I was really hoping to be able to have 64-bit release out, though
Okay, I pulled the release off of GitHub. I’ll update the threads in the morning.
In all likelihood, ill probably hold off on doing another release until after the overhaul has made more progress due to how unwieldy the code is at the moment
Still haven’t looked into the changes but it’s going to be pulled regardless.
If there’s no way you can open the file dialog in an IDE debug session, it’s a major setback. 🙁
Have you made any decisions as far as the file dialog mentioned back here? The Listview is just about the most versatile thing around – any other third party variants are likely to do just about the same thing and add an extra cost in performance.
