DIGIT-ARC read-only archive · snapshot: July 23, 2026

Reinventing GTK: envisioning the future of the toolkit(GTK3+ ????)

29 posts · originally from https://geek.digit.in/community/threads/reinventing-gtk-envisioning-the-future-of-the-toolkit-gtk3.84980/

praka123
praka123 Original post #1
Apr 10, 2008 at 5:52 PM
Reinventing GTK: envisioning the future of the toolkit
By Ryan Paul | Published: April 09, 2008 - 11:50PM CT

Planning the next generation of GTK
The developers of GTK are preparing for a major overhaul that aims to resolve many of the framework's most significant deficiencies and add next-generation features that will increase flexibility and simplify development. This effort is still in the earliest planning stage, but several intriguing proposals provide valuable insight into some of the changes envisioned by prominent developers.

GTK is an open-source widget toolkit for developing applications with graphical user interfaces. It is cross-platform compatible, distributed under the permissive LGPL license, and widely used on the Linux platform.

In addition to being used for popular cross-platform applications like GIMP, Abiword, and Pidgin, GTK also serves as the foundation of the GNOME desktop environment which comes with Ubuntu, Fedora, and numerous other Linux distributions. GTK is also increasingly being adopted in the mobile space, where it is used by Nokia's Internet Tablet operating system, OpenMoko, OLPC, and the Access Linux platform.

Imendio's vision
Kristian Rietveld of Imendio—a software company that does custom GTK development and is currently funding a native Mac OS X port of the toolkit—presented a proposal last month at the GTK HackFest in Berlin with a plan for moving forward and addressing many of the weaknesses that GTK developers have identified over the years. The proposal offers clear goals for a long-term roadmap and makes the case for breaking ABI compatibility. Topics discussed during the presentation were later clarified in a more detailed position document.

Imendio wants the next generation of GTK to enable development of better user interfaces with sophisticated visual effects, animations, physics, and stacking. Other desired improvements include stronger OS integration, improved back-end support, increased portability, easier custom widget creation, architecture that makes language bindings easier to maintain, and support for a data abstraction layer.

In order to reduce the maintenance burden placed on third-party developers, the GTK developers have adhered to a strict policy of ABI compatibility for the duration of the GTK 2 development cycle. This provides an extremely high level of backwards compatibility, but makes it difficult to undertake drastic rewrites or perform major architectural changes. This incremental approach to development has helped promote GTK adoption, but has also created what many developers believe is an evolutionary impasse.

Imendio's developers argue that the GTK 2 series is a dead end because of the ABI stability guarantees and they say that a clean break will likely be necessary to continue moving forward because the code base contains a lot of legacy cruft and refactoring poses too many obstacles. To facilitate the break without creating undue stress on third-party developers, they suggest performing scheduled API and ABI breaks at defined intervals (possibly every five years) and ensuring that multiple versions of the library can be installed in parallel. They also want clear policies for deprecating and removing legacy API.

The proposal has been well received by the GTK community and is gaining widespread support among GTK contributors outside of Imendio. Alberto Ruiz, an independent GTK developer who is contributing to the Windows and Mac OS X ports, attended the event and posted some posted some thoughts about Imendio's presentation in his blog.

"One of the issues discussed was to provide a predictable release that might break ABI and remove deprecated API," he wrote. "The intervals for this are not clear yet, but it sounds like a good idea to me. Being predictable will let ISVs anticipate this sort of issues, which is better than getting to the situation where Gtk+ cannot get any better. There wasn't any decisions taken whatsoever, but the general feeling of agreement is pretty promising."

Read Complete article here:
*arstechnica.com/articles/culture/reinventing-gtk.ars
CadCrazy
Apr 10, 2008 at 7:40 PM
So can we expect GTK+ 3 next year :D
praka123
Apr 10, 2008 at 7:42 PM
^ofcourse NOT! :-|
may be 3 years later!
CadCrazy
Apr 10, 2008 at 7:49 PM
:shock: GTK 3 = 3 years
praka123
Apr 10, 2008 at 9:20 PM
Gnome is always incremental,not fast unlike kde and qt(cute).

yeah,now this is the time Gnome should stop the drag race and start flying :p
CadCrazy
Apr 10, 2008 at 9:28 PM
Gnome is always incremental,not fast unlike kde and qt(cute).

yeah,now this is the time Gnome should stop the drag race and start flying :p

What KDE is faster than Gnome. :shock: How ????

I guess you are biased because QT is GPL'd :D
Dark Star
Apr 10, 2008 at 9:49 PM
^^ How .. Eh ? KDE has already released 4 version and Gnome hasn't even reached 2.5 :p

Well I am dying to get back to Gnome.. Gnome enthralled me throughly ;) and after I used it , none of the DE satisfied me :[
praka123
Apr 10, 2008 at 9:54 PM
@crazy:huh!even Im a Gnome user.(ofcourse testing kdemod with archlinux).Gnome is a tad bit faster than kde.

What I meant was not the speed of booting Gnome v kde.but the development speed :lol:

But QT toolkit is much more refined and improved acc.to programmers(not me ;) ).while GTK2+ is preferred by corparations/commerical uses 'coz of its license(LGPL too!).also GTK2+ is written in C(which is the root).

while QT recently went GPLv2 and QT is written in C++ :) and many developments are done in-house in QT by the company behind it-trolltech.
CadCrazy
Apr 10, 2008 at 10:27 PM
What I meant was not the speed of booting Gnome v kde.but the development speed :lol:

huh. I got it wrong

But QT toolkit is much more refined and improved acc.to programmers(not me ;) ).

Yes KDE is sluggishly refind :D
I like simplicity of gnome. The only thing disappoints me when someone say Gnome is badly organized internally --------------
Worried about its future :sad:
M
mehulved #10
Apr 10, 2008 at 10:29 PM
What I meant was not the speed of booting Gnome v kde.but the development speed :lol:
I find both better for KDE
But QT toolkit is much more refined and improved acc.to programmers(not me ;) ).while GTK2+ is preferred by corparations/commerical uses 'coz of its license(LGPL too!).also GTK2+ is written in C(which is the root).
I wonder what you'd call Nokia, Opera, Skype Technologies, etc? Pehriwallas?
while QT recently went GPLv2 and QT is written in C++ :) and many developments are done in-house in QT by the company behind it-trolltech.
You mean Nokia now?
CadCrazy
CadCrazy #11
Apr 10, 2008 at 10:31 PM
^^ How .. Eh ? KDE has already released 4 version and Gnome hasn't even reached 2.5 :p

Well I am dying to get back to Gnome.. Gnome enthralled me throughly ;) and after I used it , none of the DE satisfied me :[

Linux need a good DE badly. Main soch raha hun kyun na main hi kuch karun :D
praka123
praka123 #12
Apr 10, 2008 at 10:35 PM
^ofcourse!u can have ur try ;) why not develop E17(enlightenement) or xfce to your taste? :D
CadCrazy
CadCrazy #13
Apr 10, 2008 at 10:49 PM
which one is faster??
Dark Star
Dark Star #14
Apr 11, 2008 at 8:21 AM
^^E17 ofcourse :p
ray|raven
ray|raven #15
Apr 11, 2008 at 8:32 AM
^Yep, E17 is friggin fast , even on systems you'd think were only meant for the dump-truck.

But, the sad part is it isnt quite stable, heck its been in alpha for 10 years :p

Ontopic: I guess a from-scratch-gtk would be better.
And IMO, gnome's getting bloated with each release.
abhinandh
abhinandh #16
Apr 11, 2008 at 9:23 AM
I guess a from-scratch-gtk would be better.
And IMO, gnome's getting bloated with each release.

yep.i can feel the bloat as i just updated to 2.22.
gnome needs lot of essential changes internally.hopefully some of them are in progress like restore from trash etc.
unni
unni #17
Apr 11, 2008 at 10:13 AM
I find both better for KDE
I wonder what you'd call Nokia, Opera, Skype Technologies, etc? Pehriwallas?

You mean Nokia now?
Has Nokia bought Trolltech?
What is the connection of Opera & Skype with Qt?
ray|raven
ray|raven #18
Apr 11, 2008 at 10:18 AM
^Prakash said Qt is not used by corporate companies, so mehul stated a few that used Qt.

Opera and Skype use Qt for their linux ports.
QwertyManiac
Apr 11, 2008 at 10:19 AM
Both Opera and Skype use QT libraries to power their GUI. Yes Nokia has acquired Trolltech, perhaps in need of its QTopia platform or maybe just for its engineers.

rayraven - Only Linux? QT is cross platform I think and both use it on all platforms they publish to?
M
mehulved #20
Apr 11, 2008 at 11:15 AM
Has Nokia bought Trolltech?
*trolltech.com/company/newsroom/announcements/press.2008-01-28.4605718236
*trolltech.com/28012008/28012008
unni
unni #21
Apr 15, 2008 at 3:55 PM
Thanks to rayraven, QwertyManiac & mehulved for their replies and thanks to praka123 for the post. I have been trying to learn Qt for the past 3 months. I am very much surprised that I missed this (Qt acquisition) news.
ray|raven
ray|raven #22
Apr 15, 2008 at 4:01 PM
rayraven - Only Linux? QT is cross platform I think and both use it on all platforms they publish to?

Sorry for the late reply, missed ur post , somehow.

Anyways,From Wikipedia : *en.wikipedia.org/wiki/Skype
The Windows user interface was developed in the Pascal-based Delphi programming language, the Linux version in C++ with Qt, and the Mac OS X version in Objective-C with Cocoa.
And AFAIK, Its a similar case with Opera.
praka123
praka123 #23
Apr 15, 2008 at 4:07 PM
for such apps,we have to rely on qt-static versions(for eg: opera).
ray|raven
ray|raven #24
Apr 15, 2008 at 4:11 PM
^Not necessarily, we can get both versions, static and shared.
Opera and Skype come in both options.

Static ones are better for folks not using KDE.
praka123
praka123 #25
Apr 15, 2008 at 4:27 PM
^skype -can u link me to a qt-static .deb?
infra_red_dude
Apr 15, 2008 at 4:34 PM
^^^ Find it here: *www.skype.com/intl/en/download/skype/linux/choose/

Choose either the static or static-oss.
ray|raven
ray|raven #27
Apr 15, 2008 at 4:36 PM
The Medibuntu repositories have both static and shared qt deb's.

Also, you can go to this page , choose the os you are using , and get a shared or static package.
*www.skype.com/intl/en/download/skype/linux/choose/

Cant verify the skype link though, coz my office proxy has blocked it.

Can someone confirm?

EDIT:Thanx Infra, guess google gave me a correct link indeed :p
praka123
praka123 #28
Apr 15, 2008 at 7:51 PM
guys,I am new to this skype thing.my relatives are in US and insist on configuring skype.I think in Linux+pulseaudio,it seems tough :(
how is ekiga?I will prefer it only.esp voicechat is enough :)

Sorry for offtopic discussions.;)

what about gtkmm(gtk C++ support):-
gtkmm is the official C++ interface for the popular GUI library GTK+. Highlights include typesafe callbacks, and a comprehensive set of widgets that are easily extensible via inheritance. You can create user interfaces either in code or with the Glade User Interface designer, using libglademm. There's extensive documentation, including API reference and a tutorial.
gtkmm is free software distributed under the GNU Library General Public License (LGPL).
*www.gtkmm.org/
infra_red_dude
Apr 15, 2008 at 8:22 PM
guys,I am new to this skype thing.my relatives are in US and insist on configuring skype.I think in Linux+pulseaudio,it seems tough :(
how is ekiga?I will prefer it only.esp voicechat is enough :)

Sorry for offtopic discussions.;)
[offtopic] Skype static-oss is supposed to work with PulseAudio. But I could never get it work. PA broke my system. Anyways thats now the issue here. You can try static-oss with PA and report back. Never used Ekiga. But skype works perfectly in Linux! [/offtopic]