Windows: 64-Bit, use schannel for curl - #65
Conversation
|
@swt2c and @Ben-Meister Sorry I somehow missed this PR. Does this still make sense given the shutdown of the website? |
|
It is potentially still useful with mhgui, which as far as I know, although I haven't tested lately, still works and can program some remotes by invoking libconcord/concordance. Sorry for not reviewing this initially, but I think when I saw it I thought about whether we should switch to building Windows binaries natively, instead of cross compiling on Fedora. |
|
OK, I'm fine with this then as long as we use a supported version of Fedora - 39 is well past EOL |
|
I bumped all the versions on containers and actions and MacOS Python to the most current. I see now that Fedora latest (currently 43) appears to work. I also trimmed down the libcurl compile to just the 32-bit shared version we're using to cut the build time, and merged the workflow in with the regular Windows CI so that we don't have to build libcurl separate and stuff an RPM in the repo. I have GitHub cache the RPM to save time on subsequent builds. |
|
Is there any reason to every build a 32-bit anything anymore? Most Linux distros have dropped 32-bit support, and AFAIK, Windows has been fully 64-bit forever. Why aren't we just building everything as 64-bit only? |
2b1d1e3 to
2abe408
Compare
|
I changed the workflow, NSIS, and libcurl so that concordance compiles and runs as 64-bit with a 64-bit installer. As a quick test I dumped my 650 using the 32 and 64-bit and the results were identical. There were some 32-bit only devices as late as the Win10 timeframe, but that is becoming less and less since Win11 no longer has published 32-bit builds. At this point 32-bit is for universal compatibility, old machines, old software. I could put 32 as a separate workflow and scripts. What do you all think? |
|
Thanks for all your work here! |
This is in reference to the SSL certificate issues we identified back in #55 and further elaborated on in congruity/congruity#12 (comment) . This is what I was referring to in #57 (comment) (though is independent of the wheel changes etc.)
We found that if we used schannel on Windows for curl, connections to the Logitech site would automatically pull down the appropriate SSL certificates into the certificate store and use them. The prior method discussed in #56 would use the SSL certificates from the store but wouldn't install them if they were missing.
This PR provides two items:
Known improvements that could be made:1) Still using Fedora 39 as opposed to latest to compileFixed2) We could merge the two Windows workflows into one, and not store an RPM in GitFixed