If anyone interested, this is also one of mine, with surely some mistakes and omissions , sorry : https://m.youtube.com/watch?v=TE-s5522v0Y
In french: https://m.youtube.com/watch?v=lU6J01XB4pc
Just to share my experience for developping Apps with QtCreator:
( A rewrite from https://gist.github.com/lduboeuf/dcf22607207d5b7abc8ac966d20942ce )
To get Ubuntu.Components recognized by QtCreator:
## Get public Ubports key wget -qO - https://repo.ubports.com/pubkey.gpg | sudo apt-key add - ##add ubports repository sudo add-apt-repository "deb https://repo.ubports.com/ [bionic|xenial] main" ##install Ubuntu.components sudo apt install qml-module-ubuntu-components ##qml components should be installed in "/usr/lib/x86_64-linux-gnu/qt5/qml" ##set the environnement variable to profile echo "export QML_IMPORT_PATH=/usr/lib/x86_64-linux-gnu/qt5/qml" >> ~/.profile ##reload env or you might need to logout/login source ~/.profile
##run container clickable docker run -i -t --entrypoint /bin/bash clickable/ubuntu-sdk:16.04-amd64 ##in an another terminal, get the container id docker ps ##copy ubuntu components to local folder docker cp [container id]:/usr/lib/x86_64-linux-gnu/qt5/qml/ /your/local/directory ##set the environnement variable to profile echo "export QML_IMPORT_PATH=/your/local/directory" >> ~/.profile ##reload env or you might need to logout/login source ~/.profile ##stop container docker stop [container id]
example here: https://github.com/lduboeuf/ut-qtcreator , use branch "add module" branch for installing also some UT qml modules
Well, my first native app just landed on Openstore. https://open-store.io/app/ttbn.lduboeuf
I've only used QQC2 components and imported needed svg icons from suru theme.
I admit that as a QML beginner, it was sometimes hard to make things work and displayed correctly... color theme is still not that good.
But i'm happy that i can now build for multi os and still use QtCreator.
Thanks for all your examples
@Mystic-X hello, i'm working on it, will land hopefully soon, at least for having a birthday field on the contact app
follow-up here: https://github.com/ubports/address-book-app/issues/5
as @LarreaMikel says, a Phone that can be easily hacked. A fast browser . I would prefer easy data sync (calendar, contacts, notes,... ) than convergence.
Wondering if any up to date overview / architecture schemas available somewhere ?
Last one i know of are from old Cannonical Ubuntu Touch days: https://www.slideshare.net/chihchun/ubuntu-phone-engineering and https://www.slideshare.net/tusharkute/introduction-to-ubuntu-edge-operating-system-ubuntu-touch
We might create some in documentation overview section.
Working behind proxy is sometimes so painfull ;-), i share my experience to get
clickable working behind a corporate proxy:
clickable setup-lxd, then it will hang when trying to fetch apt updates
/var/lib/lxd/containers/clickable-armhf/rootfs/etc/apt/apt.conf.d/01proxywith proxy settings:
Acquire::http::Proxy "url:port"; Acquire::https::Proxy "url:port";
lxc exec clickable-armhf -- apt-get update lxc exec clickable-armhf -- apt-get upgrade
lxc exec clickable-armhf -- apt-get install click
it should work now.
On Qt Creator I can develop "normal" Qt programs. If I want to open a Clickable project, there are a lot of Errors with the CMakeLists.txt and I cannot edit this project.
If you want to stay on QtCreator, you can have autocompletion for Ubuntu Components by importing them on your PC:
(see topic 1 or 2 ) https://gist.github.com/lduboeuf/dcf22607207d5b7abc8ac966d20942ce
Tell us about OTA 12 :)
if anyone interested in my presentation held today (in french)
slides available here:
http://codedarmor.fr/labs/slidedecks/slides/OS mobiles alternatifs.pdf
I will do a presentation of UT along with other projects in French in Mai 15th at my local developer community, here is my initial work: https://github.com/lduboeuf/ut-helloworld-py/raw/master/osmobiles.odp
I used some schemas from canonical, if anyone can have a look if they are fine. UT slides starts on page 26, architecture schemas are at 31-33.
Comments or PR welcome.
Well, i'm engaged now at the local developer community to talk a bit about UT, and UT apps. Will do a small presentation beside from presenting projects like LuneOS, PostmarketOS, Plasma Mobile, Librem5...
How can i convice them to develop apps for UT, Plasma and Others ?
IMO they could be interested if most of their code base can be shared among OSes. Are there any app examples around that target cross mobile platform ? heard of kaidan https://github.com/KaidanIM/Kaidan .
@mark-volpetti you can contribute then to make it more clear :). You can start by filing a bug
https://github.com/ubports/devices.ubports.com (not sure if it is that one)
or even better, propose a Pull Request
Apart of some known issues regarding APN settings, it seems that MMS is not reliable when we turn on/off cellular data. Some properties might not be updated and it is known that if any error occurred while receiving, there is no notifications. @sergiusens will gracefully/hopefully work on some part soon as he told us but some components need to be updated too.
Hope it will be also on next goal as it is one of fundamental/expected working feature of a phone
Call for dev volonteers :)
I presume you've already read documentation ? http://docs.ubports.com/en/latest/appdev/index.html
Hi, and Welcome :)
Maybe not an advice but here is my own journey that i've done to develop apps.
I've first learned Qt QML (QQC2) in general, make an app that is quickly testable with QtCreator, resource e.g: http://qmlbook.github.io/
To learn QML i advise to use a Live reloading app so that it can be easy and quick to test
Then i've started to hack on c++ part with existing applications.
And then learn the UT platform specificity ( click packaging, plaform constraints, UI toolkit, content-hub, etc... )
Regarding UT and the lacks of important apps (i don't know which ones ;-) and it fully depend on your phone usage). It is important to notice that most of current mainstream apps are locked down, and that they will not allow to develop ourselves something
@makeixo I didn't find any better IDE for Qt QML than QtCreator for code completion and build/test locally.
Of course if working with Ubuntu Components, you will have to import them to your Path to get autocompletion work, i will share a Topic on it