[arch-general] packaging mingw-w64-gtksourceview5 and mingw-w64-libadwaita
Hello, I would like to help Gnome Text Editor developers to cross-compile it for Windows within their CI: https://gitlab.gnome.org/GNOME/gnome-text-editor/-/issues/149 This might help attract Windows users to Gnome/Linux... I was looking for a Linux distro that has a solid Mingw-w64 library collection to use as docker image in CI. Fedora doesn't have mingw-w64-gtk4 while Arch does, so I decided to use the latter. Dear Arch package maintainers, may I ask you to, please, package the most recent version of mingw-w64-gtksourceview5 and mingw-w64-libadwaita so I can go ahead? I saw this MSYS2 package (they use pacman) that might help you with compilation flags, etc.: https://packages.msys2.org/base/mingw-w64-gtksourceview5 https://packages.msys2.org/base/mingw-w64-libadwaita Thank you! ST
Hi,
I was looking for a Linux distro that has a solid Mingw-w64 library collection to use as docker image in CI. Fedora doesn't have mingw-w64-gtk4 while Arch does, so I decided to use the latter.
Note that at this point there are exactly 5 mingw-w64 package available on *official* Arch Linux repositories and those have been added to the official Arch Linux repositories only for Wine (which needs to build DLLs). Everything else is provided via the community-operated AUR, a source code repository. I also provide an unofficial binary repository which contains a quite large subset of the mingw-w64 packages from the AUR (see https:// wiki.archlinux.org/title/Unofficial_user_repositories#ownstuff). So while there is a very big collection of mingw-w64 packages *for* Arch Linux, the distribution itself only provides very few packages. (That is not necessarily a bad thing. Official Arch developers can focus on the distribution itself while other contributors (such as me) can focus on additional use-cases like cross-compilation. Distributing the work makes sense as well as splitting repositories.)
Dear Arch package maintainers …
Therefore official Arch maintainers are likely not the ones to ask here. It is very unlikely that they suddenly decide to adopt a large number of mingw-w64 packages from the AUR (and considering that I already provide a binary repository it is likely also not really necessary). If you want new mingw-w64 packages, simply create the PKGBUILDs and upload them to the AUR (see https://wiki.archlinux.org/title/Arch_package_guidelines and https://wiki.archlinux.org/title/MinGW_package_guidelines or simply checkout how other mingw-w64 packages of projects using the same build system are structured). If you want me to add existing AUR packages to the binary repo, you can ask on GitHub (https://github.com/Martchus/PKGBUILDs/issues/94).
This might help attract Windows users to Gnome/Linux...
I once built Evince for Windows (because I could) and I must say that I wasn't really happy with the result. GTK applications feel very alien under Windows, especially GNOME-flavored ones. They neither follow the style of traditional applications nor the new "Universal" style. Not even the standard dialogs are native. So I doubt the effort will be appreciated much by Windows users. (I personally like to use KDE apps on Windows, though. They feel very native thanks to Qt.)
Dear Arch package maintainers, may I ask you to, please, package the most recent version of mingw-w64-gtksourceview5 and mingw-w64-libadwaita so I can go ahead?
As I mentioned before, nothing prevents you from packaging those yourself. It is really not that hard once you're getting into it. (And since you also want to build the application using those libs itself you will have to get into it anyways.)
I saw this MSYS2 package (they use pacman) that might help you with compilation flags, etc.:
https://packages.msys2.org/base/mingw-w64-gtksourceview5 https://packages.msys2.org/base/mingw-w64-libadwaita
So you even already know where to look for patches, etc. :-)
…collection to use as docker image in CI.
About container images: If you want to invoke makepkg itself in the container (to build a new mingw-w64 package) you can have a look at my `makecontainerpkg` script: https://github.com/Martchus/PKGBUILDs#container-image-building-packages-with... It requires some knowledge about Arch Linux package/repository management but this approach should allow you to build Arch Linux packages on any distribution. (I only tested it with Docker under Arch Linux so far.) The official way to build packages for Arch is documented here: https://wiki.archlinux.org/title/DeveloperWiki:Building_in_a_clean_chroot (That's also what I'm using to build the mentioned binary repository.) Best Regards Marius
participants (2)
-
Marius Kittler
-
Sim Tov