Ubuntu SDK Tools
Ubuntu SDK development tools. IDE, device connectivity, builders, packaging, emulator, simulator, profiler, debugger, etc
Blueprint information
- Status:
- Not started
- Approver:
- David Planella
- Priority:
- Undefined
- Drafter:
- Zoltan Balogh
- Direction:
- Needs approval
- Assignee:
- Zoltan Balogh
- Definition:
- New
- Series goal:
- Accepted for saucy
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
As a developer I want to use an IDE with editing, local compiling, debugging and testing capabilities.
As a developer I want to install and test my application on the target device.
As a developer I need an emulator and simulator to test my application on the host system.
As a developer I want to use a UI designer tool.
As a developer I need a set of developer tools for automatic testing (Launchpad API, etc), revision control, performance analysis, etc.
As a developer I need packaging, publishing, updating, revoking tools and channels.
====
Notes from vUDS session http://
1. Introduction (bzoltan)
2. As a developer I want to use an IDE with editing, local compiling, debugging, profiling and testing capabilities.
We have QtCreator! We are adding extra plugins for Ubuntu-specific features, documentation etc.
Why not Eclipse? Because QtCreator has many QML
3. As a developer I want to install, profile and test my application on the target device.
One QtCreator plugin will compile and deploy the application to the target device. The target is controlled via a SSH connection.
Chroot? Cross-compilation? Build on device? pbuilder slow!
ARM build device and image for it?
qml-phone-shell has been already profiling the executable on the device. Check the ./run_on_device & ./build scripts in lp:unity/phablet for how it works.
4. As a developer I need an emulator and simulator to test my application on the host system.
One emulator idea: http://
Allows i386 images to be built, which then can be run in Qemu/VirtualBox/VM. But how to deal with device-specific abilities like sensors, GSM, etc.
Another option is a clever multi-arch thing via QEMU. On your host it detects the executable binary type, if arm it brings up a Qemu emulator and runs it inside there.
http://
Proposal: run i386 Android images.
QtSimulator integration?
[aside] can bring up qml-phone-shell on an i386 machine right now. If the QtUbuntu plugin is not available (i.e. when on desktop), it falls back to an emulation layer.
5. As a developer I want to use a UI designer tool.
QtCreator 2.7 beta (with Qt5.0.1) has designer for Qt Quick 2 by default. [albeit with the discussed lackings in how it shows Ubuntu UI toolkit components]
Questions:
1. how does it deal with our components? With the grid unit & theming system. qml2puppet is probably very confused by our theming system.
2. how useful is it? We should test it out.
6. As a developer I need a set of developer tools for automatic testing (Launchpad API, etc), revision control, performance analysis, etc.
Automated tests performed with qtest for unit tests and autopilot for integration & UI tests.
7. As a developer I need packaging, publishing, updating, revoking tools and channels.
We don't have it yet. We have debian packaging & Software Center, but we need to determine how suitable that is for a mobile platform.
Tizen & Sailfish are not really innovating in this area yet.
Package format a big question, and not enough research has been done yet. Security, infrastructure and foundation teams need to be involved.
====
Android 4.2.2 x86 port:
https:/
Work Items
Work items:
Study the debugging and profiling of QML apps launched on the device: TODO
Investigate how to integrate the UI Toolkit to the QtC UI designer: TODO
Application life-cycle tools: TODO
Ubuntu Touch Shell simulation: TODO
Study http://
[ogra] Research OpenGL passthrough options for QEMU: TODO
[ogra] Followup with tvoss and perhaps lool on options for MIR EGL passthrough: TODO
Dependency tree
* Blueprints in grey have been implemented.