← Back to team overview

ubuntu-touch-coreapps team mailing list archive

Re: Enabling Cmake for all the core apps

 

Just a quick self follow up

After removing my QtCreator config I get the Build/Ubuntu submenu and could explore the context of the problem a bit more.

The desktop part can be resolved by changing the
-set(DESKTOP_FILE "${PROJECT_NAME}_${APP_NAME}.desktop")
+set(DESKTOP_FILE "${PROJECT_NAME}.desktop")

but to be honest, I think that qtcreator should look into the manifest to search for desktop files; this would allow for an easy transition to multiple apps per package namespace when it arrives.

After hacking the desktop file that in I saw why it wanted to sed it:
Exec=/usr/bin/export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-LRsqEGysw5; APP_ID=com.ubuntu.clock qmlscene /home/phablet/dev_tmp/com.ubuntu.clock/ubuntu-sdk-13.10-armhf/click_package/share/qml/com.ubuntu.clock/com.ubuntu.clock.qml --desktop_file_hint=/home/phablet/.local/share/applications/com.ubuntu.clock.desktop

It really should be installing the click package and using that so it uses upstart-app-launch to launch the application under confinement.

On 15/02/14 21:48, Sergio Schvezov wrote:

On 15/02/14 18:53, Nekhelesh Ramananthan wrote:
This is a request to revert the cmake transition for all the core apps since it is effectively blocking crucial application testing on the device through QtCreator. Before the cmake transition, my work flow comprised of implementing a patch/feature and then immediately testing it on the device by pressing Ctrl+F12 through Qtcreator. This made testing applications on the device quite easy. However as now, that no longer works since QtCreator now complains of a missing desktop file. I have tried fixing it by discussing it with zBenjamin and balloons on IRC, however at the end of the day this is still broken.

What does ctrl+12 actually do? Does it require writable mode?


I understand the major motivation for the cmake transition was to help easily build click packages (using click-buddy) and ready them for deployment to the device. However this is already easy enough to do in Qtcreator by simply pressing *Ctrl+F12* or rather using the "*Install on Device*" feature. As far as I understand, click-buddy doesn't help with running autopilot tests on the device either. I am really questioning the benefit of the cmake transition. If there is something that I am missing here, please do explain this to me.

The other major motivation is to actually build click packages without any hacks; as it was before all the packages had hardcoded paths for the debs.

If you run the autopilot tests in 'deb' mode you aren't really testing on the target. To really test on the target you need the click package built, installed, and run in confinement; using debs doesn't provide any of that.

If the installing and testing requires writable mode on devices, that it is also broken in my opinion.


If you agree to the request, please submit patches reverting the commits done.

If there's no hard coding, I'm fine. But there was serious hard coding before.

Although I say, do not despair :-)

Immediate temp solution, is to make the build dir your actual branch in Project/Build
http://ubuntuone.com/3FqnDSLJpg2CUSYAtwj2oM

The reason you can't run locally in QtCreator is that, well, the system doesn't know about out of source builds that easily; and something like this is needed:

https://code.launchpad.net/~sergiusens/ubuntu-clock-app/run_from_qtcreator/+merge/206598

For running autopilot and installing on the device I would need more info on what you currently do.




Follow ups

References