Best lightweight, responsive GUI framework Linux
Question: I've bought a Raspberry Pi, featuring a 300 Mhz CPU, but it does has a pretty
good GPU. It can even run XBMC. I want to program a GUI for it, which needs to
be responsive and good-looking, while taking optimal use of the hardware
available (which isn't too good, unfortunately..). The Raspberry Pi runs
Debian minimal, and I've put the X Windowing System on it, the rest is up to
me to code.

What is the best way to dive into this? I've already looked into HTML5 and
jQuery (via Python and PyWebkit), but they seem to be too CPU-intensive
(unless someone knows how to get (Py)WebKit use the GPU, instead of the CPU).

To avoid confusion, this system will be hooked up to televisions and the like,
and will be primarily pointed on home entertainment. I don't want this to be a
desktop or desktop-like system, I'd just like to know what you guys think
would work smooth on the Raspberry Pi box, so that I can program my UI upon
that framework.


Answer: Having done a custom non-desktop UI on underpowered hardware (litl.com) and
having hacked on both GTK and Clutter a fair bit, I'd reframe the question
slightly.

The main issue is you MUST use the GPU rather than be "lightweight" - usually
when something says it's lightweight that just means it doesn't have many
features or something. Too vague a word. The key is GPU.

The hard part about using the GPU is a working driver. I don't know what the
raspberry pi people have focused on here. For ARM in general the most reliable
way to get a working driver might be to use Android; maybe not the stock
Android UI but their drivers and basic framework, then replace the UI.

X11 drivers, if they exist are often broken on ARM. This is the real problem
with X, rather than lightweight vs heavyweight. By broken, I mean maybe the
driver kinda boots and runs a desktop, but it's slow in important cases or
missing things like hardware video decoding.

Short answer: use the framework (and window system) with the best 3D driver
that supports your features you need, like video decode. Again, I haven't
looked at raspberry pi but I bet there are only one or two choices that meet
this criterion.

