The announcement of the new Jolla phone has drawn my attention and I’m sure it will draw lots of new users to the platform.
I’m a developer and I’m familiar with Qt and QML. I’m looking for some getting started type documentation but lots of the links I’ve found seem dead or very out dated.
Where can I learn more about sailfish SDK and publishing applications?
You can start by installing the SDK and building the example project. The SDK requires that you have VirtualBox installed or docker. I think that the docker option works better but it does not provide a GUI emulator. If you do not yet have a SFOS device you should go for the VirtualBox option.
Welcome. Are you this or the other half on your pic?
Start with the easy thinks: install the SDK on VirtualBox, build one of the example and run this in the emulator. When you have this finished look around on github or so for a solution close to your idea. And buy a well portion of coffee!
For detailed questions you can send me a PN.
Ps.: When your app is ready you chouse “Build RPM for manual deployment”. This includes the validation test for the Jolla store. Then go to harbour.jolla.com and upload your rpms and create a good description. Happy hacking!
A good start would be the application development documentation. A good walk threw would be your first app. You mentioned that you are familiar with Qt and QML. Please keep in mind that we are still on Qt5.
Regarding about your question of publishing apps, there is a official store managed by Jolla, called harbour.
There are also three other methods of distributing apps. Two are ‘app supported’: https://openrepos.net/ and chum (on a build system supported by Jolla)
The third mechanism is automated builds on github (for instance). I’ve been moving to distributing on all of these and harbour when I can meet the requirements.
5.6. It would be nice if we were further. But, as has been pointed out, the QT6 support that @rinigus and @piggz have done so far get us to a wrold of KDE plasma apps, sadly without silica, but that’s a bunch!
I take advantage to this thread to continue about the developer onboarding experience.
So far, I’m not a cpp dev with many years of experience and even less with QTCreator.
But I do with Android Studio with Kotlin and XCode with Swift.
I wonder if you have any tips with the packaged QTCreator for SailfishOS.
At first glimpse, I have some questions :
Anyone succeeded to run the env to VSCode (Emulator, Kits..etc) ?
The Silica doc is missing event functions, right? (eg: Combobox:onCurrentIndexChanged…)
Can downloading QTCreator from qt.io and using Sailfish work?
I understood about QT6 license issues, but for us, what does it change to stay in QT5 or what does it bring this new version? I saw the project of porting some apps to QT6.
In QML, almost all properties emit a signal on changes that can be handled with a onFooChanged signal handler. No need to document explicitly that is standard behaviour.
Signals are generally documented when they don’t follow the default scheme, or are standalone signals like done/onDone in a Dialog.
That being said, there are definitely cases where Silica docs are incomplete.
Welcome. You will be quick in QTCreator, this is a nice tool. For the start you live with QML only.
The SDK installs an QT Creator tailored for SFOS development. But if you love the command line there is the command sfdk. So you can use every tool to create your programm text. Some documentation is available e.g. here
see answer rom nephros
No. The SDK (the kit) contains much more. If you install in VirtualBox you see 2 VBs, one for the cross compiling features and one for the emulator. QT Creator and much more are installed outside VB.
I understood about QT6 license issues, but for us, what does it change to stay in QT5 or what does it bring this new version? I saw the project of porting some apps to QT6.
For today nothing. When QT6 is on your phone, we can talk about.
It depends on what you’re aiming for.
If you want to make native, silica-based apps you’re going to have to use Qt5.6.
Also, only such apps can be published in Harbour, the official app store.
The upcoming Qt6 (and existing Qt5.15) libraries available from Chum (a community-powered app and library repository) enables you to e.g. develop or port a Kirigami app.
But you will have to publish it in Chum (ideally) and it will not not use Silica and therefore not look or behave like native apps do.
As the standard Sailfish OS app is business logic in a binary (optional) + UI in QML, all the “how it’s done” is available right under /usr/share/<<application name>>/qml.
Also many parts of Silica are readable as QML files under /usr/lib/qt5/qml/Sailfish/Silica
(Word of warning though: Silica is still proprietary. Looking at those files may put you in trouble, copying non-trivial parts of those doubly so!).
A good path for learning is also trying to fix things you don’t like or miss in existing apps.
Or, adopt an older or broken app that has been unmaintained and bring it up to speed.