dave_gnukem icon indicating copy to clipboard operation
dave_gnukem copied to clipboard

Github Actions (CI) ?

Open DartPower opened this issue 3 years ago • 2 comments

Can you write workflow for dev/nightly builds?

DartPower avatar Jan 22 '22 08:01 DartPower

Hi, thanks, hm, that may be interesting to have, but unfortunately I don't have spare time at the moment to work on that in the near future. Since I don't have much time to work on this at the moment, the codebase is in a fairly stable stage at the moment, though that may change in future. Will give it some thought, requires a little thinking and would probably require some refactoring of current build systems (or at least, maybe adding more in parallel). - e.g. the Mac helper scripts could use some updating, they don't even produce a .app and don't resolve or include dependent libraries (or sign and newer macOS versions also like some slight differences in how the dmg is created), and I think the last time I released was 32-bit so the latest SourceForge binary .dmg is possibly (not sure) even currently broken on 64-bit Macs that don't support 32-bit binaries anymore. I do have gnukem building and running on my Mac dev systems but haven't had time to update these.

On Windows I still build in Visual Studio and doing installers is not yet automated, so making an installer is a bit of a manual process, i.e. involves editing the installer files to update a few hardcoded things like the version and build paths and running Inno Setup, plus codesigning the exe and installer which I like to do otherwise you run into lots of problems ... the actual building in VS is pretty easy and could be probably quite easily automated from a .bat or somesuch (though IIRC there's one or two build settings that need to be set before it runs possibly) ... on Linux I may need to update to some more modern build system, I'm not sure .. but NB I also want to be careful with tinkering with the build systems as revamping the build system could (if not done carefully) affect or break downstream ports that apply automated patches. I don't want to potentially break downstream ports that use e.g. Makefile + patch or whatever ... but conceivably I was considering maybe doing something like adding cmake (or configure, if that's still considered OK to use these days) scripts or something in parallel with the Makefile, but again not something I really have time for anytime soon. I'm not exactly sure which build system is best to use ... but however it's done should probably be done in a way that makes it easier to do things like let others make Linux distro packages if possible. Or perhaps the Makefile is sufficient as it's a relatively simple application, I don't know, but it comes from ancient days.

davidjoffe avatar Jan 22 '22 17:01 davidjoffe

As I have no spare time lately, if it's something you or anyone could help with that would be useful.

davidjoffe avatar Nov 19 '22 12:11 davidjoffe