It has been a while since I posted a status update about Managarm, and because of that this post might be a bit long, sorry guys! About one month ago, we managed to get the gtk3 demo application running. This involved a few interesting steps, especially from a package management view, as gtk3 actively complains and fails if certain files (which are normally generated during post install) are missing, one can think about the mime database and cache files for glib, gio, gdk and gtk. After figuring that out it turned out that gtk3 itself actually worked fine, so that was nice.
With xlib, gtk2, and gtk3 available, only one major graphics framework remained unported, Qt5. Last week, I set out on changing that. Not a lot needed to be done for Qt, but I did spent a few days fighting with their build system (and as of writing this it still isn't how I want it to be), but in the end I got a Qt command line application running. Not satisfied with that, I set out on getting Qt gui working, a goal which we reached today.
With the 4 biggest frameworks running, I found it fitting to look back on where we came from. Around 14 months ago, I posted a screenshot of Managarm running xclock and glxgears. Of the two, xclock was the first ever X program to run on Managarm. So what better way to celebrate the progress than to run 4 clocks, one based on each framework
.
In the bottom left is xclock running, next to that runs a gtk2 based clock, above those two we have an gtk3 based clock and the last one on the right is based on Qt5.
Lastly, what fun are graphics frameworks if you can't use them to play games right? So I ported a minesweeper based on Qt5, mostly because it's fun and I've been trying to speedrun it on my host
. It runs really nicely and all in all sums up the progress we made nicely.