== Dev Week -- Getting Started with Unity 2D -- Kaleo -- Thu, Mar 3rd, 2011 == {{{#!irc [17:01] Logs for this session will be available at http://irclogs.ubuntu.com/2011/03/03/%23ubuntu-classroom.html following the conclusion of the session. [17:02] Kaleo has been caught up in something else important. I'll keep you posted. Hold tight. [17:05] thanks a lot Kaleo [17:05] with just 5 minutes delay, I give you Florian "Kaleo" Boucault, one of the masterminds behind Unity 2D [17:05] enjoy the session :) [17:06] Thanks people for joining in [17:06] I will give a brief overview of Unity 2D [17:06] And let you guys shoot questions my way [17:07] Unity 2D is essentially an implementation of the Unity user interface using Qt and QML [17:07] it reuses the same backend technologies used in Unity proper [17:07] libbamf, libdee, libunity, places, etc. [17:08] and intends to provide a UI that matches Unity proper as much as possible [17:08] The rationale behind Unity 2D is that we want to run on platforms that do not provide accelerated OpenGL [17:08] QUESTION: < jack002> what are those: libbamf, libdee, libunity, places, [17:09] BAMF provides application matching services: it tells you what applications are running on the desktop and informations about them [17:09] libdee is a way to publish lists of data over D-Bus [17:10] places are the providers of data for the dash (the dash is the thing that comes up when you click on the Ubuntu button in the top left corner) [17:11] For those who want to try out Unity 2D, you can find it in a PPA for Natty [17:11] We also provide a stable version for Maverick in the same PPA but it does not contain the latest features [17:12] < monish001> QUESTION: how to find it in a PPA for Natty? [17:12] https://launchpad.net/~unity-2d-team/+archive/unity-2d-daily === dholbach_ is now known as dholbach [17:13] Unity 2D is the default interface for ARM based Ubuntu isos [17:15] For developers [17:15] and people interested contributing to it [17:15] we have a home on the ubuntu wiki [17:15] https://wiki.ubuntu.com/Unity2D [17:16] In terms of architecture [17:16] Unity 2D is divided into: [17:16] - window management (using metacity) [17:16] - a top panel [17:16] - an application launcher on the left [17:16] - the dash search interface [17:16] - a workspace switcher [17:16] they are all separate applications/processes [17:17] the code (hosted on launchpad with Bazaar) reflects that separation of components [17:18] each having its directory: [17:18] - panel [17:18] - launcher [17:18] - places (= dash) [17:18] - spread (= workspace switcher) [17:18] metacity being mostly upstream with around 3 small patches [17:19] 18:17 < chadadavis> The current natty seems to already have it in the default repositories. [17:19] That's correct [17:19] We pushed a recent version into Natty last week [17:19] but I really recommend the PPA [17:19] which contains critical bug fixes [17:20] 18:19 < abhinav> QUESTION: what languages can we use for development ? and can development be done on Maverick or Natty is absolutely necessary ? [17:20] Unity 2D is written in C++, QML and incidentally Javascript [17:20] C++ is used to create APIs that the user interface written in QML uses [17:21] QML is a declarative language to describe user interfaces; it is part of Qt [17:21] Development is now only done on Natty [17:21] We stopped developing on Maverick 2 weeks ago [17:22] Only backporting essential bug fixes [17:22] 18:20 < rsajdok> QUESTION: Can you describe how to run unity-2d-launcher with gdb and any function? [17:22] If you have Unity 2D installed from the PPA [17:22] and if Unity 2D is running [17:22] you can attach gdb to the unity-2d-launcher process [17:23] ps aux | grep unity-2d-launcher will give you the PID of it [17:23] sudo gdb -pid PID_OF_LAUNCHER [17:23] will give you the gdb prompt [17:23] rsajdok: does it answer your question? [17:26] < jack002> QUESTION: Is there any plan to implement "windows tiling" like in Windows? I constantly need two programs opened like Firefox and Terminal. Switching between them is annoying, resizing windows is time consuming... [17:26] There is no plan for windows tiling as far as I know [17:26] Sorry :( [17:27] < monish001> QUESTION: Could we expect projects from unity 2D for GSoC 2011? [17:27] We have not thought about it at all [17:27] It sounds like a great idea [17:27] I would love any help we can get :) === ClassBot_ is now known as ClassBot === jussi01_ is now known as jussi [17:30] For people who want to chat about Unity 2D in general [17:31] we hang out on #ayatana on freenode [17:31] with the Unity proper people [17:31] agateau, oSoMoN and uriboni are the people to talk with [17:31] by uriboni I meant nerochiaro! [17:35] Ok, well [17:35] I feel we are running out of questions [17:35] Thank you all for the good questions and your time [17:36] I will stay here longer in case any question comes up [17:36] 18:35 < raki__> i would want to help too how can i start? [17:36] Start by installing it and trying it out [17:40] If you like it [17:40] I suggest you find something you would like to improve [17:40] And start from there [17:40] The wiki page is a great starting point [17:40] https://wiki.ubuntu.com/Unity2D === leila is now known as Guest82995 [17:40] < monish001> QUESTION: do we have something called unity 3d also> [17:40] Unity 3D is a nickname for Unity proper, Unity you get by default in Ubuntu Natty [17:41] < Mkaysi> QUESTION: Is Unity2D going to be shopped with Natty, if someone uses computer, which can't run Unity 3D? [17:41] No, it will not be installed by default [17:41] It will not be on the CD [17:41] but it is installable via the packages very easily === Kmos is now known as Guest60040 [17:41] < rsajdok> QUESTION: It started but I can not set backtrace on function launcherapplication::launch() [17:41] for that you will need to run from the source code [17:41] by that I mean [17:41] get the source code as indicated on the wiki page [17:41] compile it [17:42] and then start the launcher from there using gdb: [17:42] bzr branch lp:unity-2d [17:42] cd unity-2d [17:42] cmake . && make [17:42] gdb ./launcher/app/unity-2d-launcher [17:42] should do it === yofel_ is now known as yofel [17:52] QUESTION: [17:52] < raki__> suppose if i want to develop something for unity then will i have to learn qml or c++ is enough? [17:52] < raki__> and what are you using javascript for? [17:53] if you are going to touch the user interface at all you will need to understand QML [17:53] Javascript is used inside QML [17:53] but no worries, QML is really as easy as it gets [17:53] the learning curve is not so high if you did UIs before [17:56] monish001> QUESTION: could you provide any good tutorial for QML to get started? [17:57] the QML documentation is quite good [17:57] and there is an official tutorial [17:57] http://doc.qt.nokia.com/4.7-snapshot/qml-tutorial.html }}}