O futuro: Nada foi oficialmente declarado. No entanto, a Canonical está buscando uma estratégia convergente para o seu sistema operacional Ubuntu. Isso sugere que, no futuro, seu SDK, que usa a linguagem QML (javascript like) e o kit de ferramentas Qt, acabará sendo as opções preferidas para o desenvolvimento de multiplataformas. O SDK deve permitir que um aplicativo seja dimensionado para vários fatores de forma. Também é importante notar que Mir , o novo O gerenciador de janelas de composição que eles estão desenvolvendo terá ligações Qt por padrão.
Atualmente: Como as coisas estão atualmente, o desenvolvimento na área de trabalho é suportado por quase todos os idiomas e ferramentas que você desejar. No entanto, a Canonical recomenda o GTK + 3.0 eo python2.7 para iniciantes (apesar dos documentos antigos dizerem pygtk, ele é realmente pygi - também conhecido como python com introspecção do gobject). O python padrão no Ubuntu é 2.7 e não 3.0 . Eles criaram uma ferramenta para desenvolvedores chamada "rapidamente" que permite projetar, codificar, empacotar e distribuir facilmente seu aplicativo. Por padrão, os aplicativos dependem do pygi (GTK3) e a interface do usuário é projetada com o Glade.
Uma coisa que você pode notar com o GTK3 e o pyGI é que ainda não há muita documentação boa para isso. Aqui é um lugar para começar, mas falta muita coisa. Acho que posso traduzir muitos dos documentos do C ++ Gtk e o documentação-semente para as funções apropriadas em python por alguma experimentação. Muitas vezes, se eu puder descobrir como fazer isso com o pygtk antigo, não é muito diferente no pyGI mais novo. Finalmente, você pode sempre postar no AskUbuntu ou StackOverflow para obter ajuda da comunidade.
Finalmente, o Ubuntu tem algumas APIs específicas para interagir com o Unity. Confira a página recursos do desenvolvedor para obter mais informações.