Where does the name GLib come from?

Where does the name GLib come from? Originally “GNOME Library” or “GTK Library”?


GLIB (back when it was part of GTK 1.0) was a “library of useful routines for C programming”.

So, where does it come from? GLib totally seems an acronym. Or was it originally an acronym and now a recursive acronym?

So? :sweat_smile: It’s still today that, but I asked about the name.

GLib is not an acronym.

You should stop operating in write-only mode, and listen to people answering your questions.

1 Like

Okay sorry :frowning:
Is also this misinformation “GIO (Gnome Input/Output) is a library, designed to present programmers with a modern and usable interface to a virtual file system.”? (source: GIO (software) - Wikipedia)

Deal :handshake:


It doesn’t mean anything. It “comes from” someone naming the library “GLib”.

1 Like

Yeah, @ebassi already answered :slight_smile:

I find this whole interaction somewhat amusing, since whoever came up with the letters g l i b may not have had an acronym in mind, may not have had a name in mind, but I am quite positive they didn’t use a random hash generator either. That person may no longer exist to tell us the story, but I am not ready to believe it that they pulled it out of /dev/null for example.

GLib used to be the GTK C utility library back in 1996. These days it’s not: it’s just GLib.

Just like GTK used to be the GIMP toolkit, and these days it is just GTK, or GNOME used to be the GNU Network Object Model Environment, and these days it’s just GNOME.


I agree, G comes from something (probably from GTK as @ebassi told).
Did you mean /dev/random? :wink:

Yeah, as I said “Originally … or “GTK Library”?”.

Was Glib originally C utility library? I thought it was and is a general purpose library for C.


That makes sense.

What about:

GIO nowdays stand for GLib Input/Output?

Look at the history of the project in its commit log. It’s not complicated.

GIO stands for GIO, nothing more. It used to be a separate library used for file system traversals, input and output streaming API. Then it got sockets, then it got IPC in the form of D-Bus, then it got settings, and more.

Not everything is an acronym.

This is, without any doubt, the most pointless topic on Discourse; I am going to lock it, because honestly I think it’s a massive waste of time that could have been settled by looking at the history of the project. The code is published for a reason.