Re: Windows 32/64bit downloads and/or bundles for 2.x and 3.x



Hello Martyn,

I would like to add that I know there are differences, but what I want to bring to the windows offering for users/developers is some unity and consistency so people not only have a choice between all flavours (32bit, 64bit, MSVC, MinGW, sources, binaries, bundles, etc).

I would like to see:

- Patches upstreamed in all cases where possible (like the ones you mention Arnavion).

These patches usually do make it upstream. A quick glance through the bugs from which we got some of our patches shows many of them resolved and fixed. ( https://bugzilla.gnome.org/show_bug.cgi?id=665507 is one that hasn't). I've personally partially resolved an issue I had reported with a patch (gtk/gtk-statusicon.patch in the github repository, for https://bugzilla.gnome.org/show_bug.cgi?id=696505 , and I will attach it to the bug soon). The reason we keep the patches around even after they've been merged into upstream is that upstream often merges them into a version later than the one we use.

We can't bump versions as often as we'd like because of the inter-dependencies between components. Upgrading any portion of the stack even by a minor revision always involves some time spent to see which new things are broken (and they  always are), some time spent to find new patches (hopefully!) for the new things that are broken, a lot of time spent fixing the stock VS solutions, etc. We do try to upgrade as often as possible and this has allowed us to remove many patches, but relying solely on latest upstream doesn't work for us and for our Windows users.

 
- Downloads available from gtk.org, not external sites to give end users a consistency and feeling these binaries are authentic and affiliated (this is most important IMO). I often wondered when I downloaded Tor's binaries back in the day why they weren't on gtk.org and was wary of that.
- People taking maintainer-ship of providing bundles, msvc builds, etc and helping with updates to the gtk.org website in respect to that.

Of course. I believe bviktor suggested linking to gtk.hexchat.org because we update it quite frequently and thus would want changes to be immediate. If a similar guarantee could be made for hosting on gtk.org, then we would be happy to use that and maintain it.


- A well documented FAQ to help people with their disciplines on Windows (e.g. for MSVC or MinGW, for 32bit OR 64bit, etc). The current documentation is ... well ... old and chaotic IMO. I would like some easy steps people can follow to understand *which* Windows download they need depending on what they're doing (e.g. bundles for just everything with MinGW, or the hexchat stuff for MSVC sources only, etc). It should be as easy as installing GTK+ on a Linux distribution, this is something you can do in a few steps. As it currently stands, it's easier to build on a Linux distribution than to use on Windows.

I agree. Especially regarding the ease of use, building with MSVC is quite difficult work compared to doing the same on Linux. For example, look at https://github.com/hexchat/gtk-win32/blob/master/cairo/mod.md to see how we have to mofify the stock cairo VS solution to be usable. When I started work on the build system, the first thing I did was to codify the long build instructions ( http://web.archive.org/web/20130329205336/http://gtk.hexchat.org/#zlib ) into a build script, precisely so that it would be easy to build.


Perhaps this is too utopian? But we should make it easy for people to use GTK+ on Windows. Looking at how you install or use Qt (for example), they have a similar problem. There are a bunch of steps to get started. I think GTK+ would look attractive if it was well supported and documented on Windows right from the download link. By that I mean, in 2 or 3 steps, from downloading, you're done setting it up.

Indeed it would. For our build, this is the state we are at right now. The user just has to check out the git repository of patches and solutions, download the few build environment dependencies (MozillaBuild and others), and run the build script.

 
In the end, I realise there are different requirements here, some people want just binaries to link against, others want to build the entire stack. But I think we should consider each of these use cases and have a clear wizard/path on the website to make it easy for people to get started with GTK+ on Windows with their compiler and architecture of choice.

Are there different requirements? I'm not sure what the scope of tarnyko's work is, but the Hexchat site provides both sources + build instructions as well as precompiled binaries. Of course our binaries are incompatible with binaries obtained from elsewhere, since they were all built with MSVC and thus all link to the v110 CRT instead of the old CRT used by MinGW.


Thank you for your time,

Arnav



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]