GtkStatusbar Redux
Actually, there is a reason the GtkStatusbar marries a GtkLabel widget to the grip widgetino (the grip is actually just a disembodied GdkWindow). There’s no simple way to get a dynamically-sized packed widget to be square without the container’s connivance.
In this particular case, GtkStatusbar asks the label widget for its desired width and height, and then carves a square region out of one end for the grip. So, for example, if the GtkLabel requests 200×48 pixels, its parent GtkStatusbar carves out a 48×48 pixel square for the grip and gives the GtkLabel back an allocation of 152×48 pixels.
I think there needs to be a more generic way of getting square packed widgets.