15

I develop some apps for GTK+ and so I use GNOME heavily.

But what will be Unity's GUI toolkit?

21

Unity uses a toolkit called Nux. Nux is an opengl toolkit designed to be run as both a standalone widget system, or embedded into existing opengl applications. In compiz we run nux in embedded mode.

While nux is a toolkit, it is designed to be very thin, allowing us still to make direct opengl calls when we need to. Nux contains most widgets a developer would wish to use and is being developed alongside unity as a toolkit.

Unity does NOT use GTK internally. Some external stuff is rendered with GTK (global menus are out of process), however GTK has no involvement in Unity other than that.

GNOME Applications of course still use GTK.

1
  • The sources show that Unity does invoke Gtk functions directly in a number of places: $ cat unity/src/*.cpp|grep -c gtk_ -> 116. – Marius Gedminas May 9 '11 at 11:56
2

I think unity uses NUX >> http://inalogic.com/ and https://launchpad.net/nux

2

Unity itself is a desktop shell. It's a shell based on the Gnome Platform, like Gnome Shell is another shell for it.

Internally, Unity uses an embedded GL toolkit, but this toolkit is not meant to be used to develop a "Unity application". What is relevant is the toolkit that application developers should use to work well in the Unity environment.

Bindings are provided so that both the GTK+ and QT toolkits can be used to develop applications that are compatible with Unity.

A Unity-compatible application is one that uses libunity to integrate with the Unity shell: launcher integration, sound player integration, etc. The scope of libunity is currently limited, but is also complemented by the libraries of the Ayatana initiative: dbusmenu, indicators, notify-osd.

A list of reference APIs is now available at: http://developer.ubuntu.com/api/

0

I think unity-place package is using clutter. Also unity is using nux too.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.