Realizing just how bad the Gnome Software app is. Memory leaks in the background to multi-GiB usage, only closes the window when you do Ctrl+Q (Ctrl+Q is supposed to stop it in the background too), randomly says that it is loading application details when you are viewing an application whose details are already onscreen (I think this has to do with checking for updates in the background), and browsing a category overloads Gnome Software instead of loading them one by one.

#GnomeDE

If you want to learn Gtk programming

No matter what language you want to use to program your Gtk app, read the Python tutorial to get started, even if you are not going to write your app in Python.

So far it has been the most comprehensive and well-written tutorials I have ever seen for Gtk, and explains important concepts even better than the official documentation does. What applies to Gtk programming Python applies to most any other programming language as well, especially scripting languages, so what you learn from this tutorial will apply to your use case as well.

Gtk is a cross-platform GUI toolkit that serves as infrastructure for Linux/BSDUnix desktop environments like Gnome, Cinnamon, MATE, and Xfce. Gtk apps can build and run on Mac OS and Windows without too much difficulty. Though Gtk is written in C it supports very a wide range of programming languages for application programming such as Python, JavaScript, Ruby, Lua, most of Lisp the Lisp family, Java, Vala, C#, even C++ if you are a masochist. Because of this, it never occurred to me that if I wanted to learn more about Gtk programming, I should read a tutorial for one specific language (Python). Now that I have read it, I wish I had known this sooner, so I am telling everyone here on the fediverse.

EDIT: I forgot to mention, you can download the entire tutorial locally as HTML, PDF, or EPUB so that you can hack offline as well!

#tech #software #Linux #FreeBSD #OpenBSD #NetBSD #Gtk #GUI #AppDev #NativeApp #NativeAppDev #GnomeDE #MateDE #CinnamonDE #Xfce #Python #Lua #Lisp #JavaScript #Ruby #Lua #Java #ValaLang #SchemeLang #CPlusPlus #GCC #MacOS #MSWindows

The Python GTK+ 3 Tutorial — Python GTK+ 3 Tutorial 3.4 documentation