Pure maps navigation port

  • @rinigus said in Pure maps navigation port:

    For porting to UBPorts, we would need to create qml/platform.ubports and fill it with the the similar items that should provide native look and feel.

    This is not entirely necessary. It is possible to have native look/feel without using ubuntu-ui-toolkit in your app.

    QtQuick.Controls 2 apps will work fine (assuming they do not require a newer version of Qt, though it seems your "platform" implementation of this requires 5.11.
    Kirigami is also usable (Kaidan is for example in the Open Store already), but with the same caveat of the Qt 5.9 requirement needing to be met.
    It is also possible to not use Qt/QML at all (SDL 2 for example, or an HTML app).
    And yet again, it's also possible to ship additional needed QML modules within the package of your app, though a newer Qt itself is not feasible through this method.

    So if any of the existing "platforms" can work on Qt 5.9, the quickest way would probably be to create a clickable.json file for the project, and get clickable set up to build a click package of the existing app. It is also better for cross-platform apps to look as similar as possible across platforms, than it is for them to look as native as possible on all platforms. 🙂

  • @dobey thanks! OK, that's way easier then. Kirigami would be better, since it has few features that make it more convenient to use on mobile, when compared to my QtControls implementation.

    So, I will have to adopt the code to Qt 5.9, if any changes are needed at all. After that I'll ping over here and maybe someone can help with click packaging.

    Pure Maps uses QMapboxGL Native library, the separate QML plugin - both would probably need to be packaged. I don't know whether you have pyotherside and Nemo DBus QML plugins available already. In addition, it uses Mimic or Flite for voice prompts.

    How is the application expected to keep display on in UBPorts? That will probably need to be adopted as well

  • Last Qt 5.11 requirement is imposed by the IconImage - one internal class that I use. Its used due to the ability to load icons by name and with the use of fallback path list.

    So, to finish porting to lower Qt version, I will need to know where do the icons go in UBPorts on installation. Then I can just prescribe full part to the icons and we will be ready to go for finalizing it.

    In addition, what is the mechanism that is used to run QML-only applications in UBPorts (if I don't have C++ main())? On Sailfish, we use special runner. I made something similar for Linux desktop (https://github.com/rinigus/qmlrunner). Does anything like that exists on UBPorts?

  • At the moment all qml only aps I've looked at use qmlscene to launch

    Exec=qmlscene main.qml

    That has distinct limitations if I understand the qt documentation, but I don't fully grok them myself.

  • @rinigus clickable creates a folder for your app in which there is an other folder named 'assets': this is the place where to store the icon.

  • I use PureMaps on my Xperia X with SFOS X. Its an excellent app. It would be amazing having pure maps on UT.

  • OK, we can replace qmlscene with my qmlrunner for a bit more functionality. I can also adapt qmlrunner for our needs if it helps.

    From quick scan of the docs, UBPorts have their own icons, units, and other style elements. So, it would make sense to create separate ubports style which is mainly copy of kirigami, but then use few elements from ubports API. Rather minimal work.

    From earlier description of click packaging, it sounds a bit similar to flatpak. As it creates its own folder, icons will be located in some fixed location. That would make loading them trivial. As mentioned above, I presume that I can also add my own QML modules (in my case, Mapbox GL QML plugin https://github.com/rinigus/mapbox-gl-qml), latest Kirigami (Pure Maps has few features in convergent design that depend on it), Nemo DBus.

    Now I would like to get someone who would like to package Pure Maps and test it. I can make all adaptations on Pure Maps side, add UBPorts "platform" and help with making it work. But I don't have a device with UBPorts on it nor expertise in click format. Feel free to send me direct email (as listed in AUTHORS.md of Pure Maps) if you want to help.

    I would expect that it will take us few days to make it work (time assuming that we have 1-2 hours per day and taking into account that delays will be induced by differences in time zones and free time allocations). So, nothing major is expected.

  • @rinigus said in Pure maps navigation port:

    Now I would like to get someone who would like to package Pure Maps and test it. I can make all adaptations on Pure Maps side, add UBPorts "platform" and help with making it work. But I don't have a device with UBPorts on it nor expertise in click format. Feel free to send me direct email (as listed in AUTHORS.md of Pure Maps) if you want to help.

    Good afternoon, thank you very much for the interest you are taking in that this goes forward, I have tested it on sailfish and I love it is great I do not know anything about programming but if you want someone to test it when you pack it in click format counts with me. is it going to veal the same operation as in sailfish?

  • @ricardo65 I would expect it to have the same functionality. We will need to package OSM Scout Server for offline operation, though. So, first the target is to get it working with online providers

  • @rinigus A query, in the open store we have an osmscout packaged in click format although it has been a long time without updating I do not know if you could use something

  • @ricardo6)How can I send a photo here?

  • The server is having libosmscout only as one of the possible backends and its not even maintained by me anymore. So, the name "OSM Scout Server" is mainly left for historical reasons. But in terms of porting, Pure Maps and OSM Scout Server are very similar and should be trivial.

  • @rinigus What we have can help count on me, although I do not know anything about packaging or mobile apps

  • @ricardo65 Packaging is exactly what's needed now 🙂

  • @rinigus Hi sir, first I would like to thank you for your goodwill and hard work. I recommend you to join the OpenStore Telegram channel: https://t.me/joinchat/Bd_29FDzIzwFwrZE539ZVg


    And also the Ubports Matrix channel for developers: #ub_bootcamp:matrix.org

    Of course you are more than welcome to join the Ubports Official channel: https://t.me/ubports

    There are many people willing to help you.
    Best of luck.

  • Hi,

    Thanks, looks like I can join these via Matrix bridges. Let's see if someone will ping me over there.

    Corresponding issue has been opened in Pure Maps repo: https://github.com/rinigus/pure-maps/issues/294

  • @rinigus I will try to help you out to package it if none of the most experienced UBports developers will show up....only, this is my last week at work and after I'll have plenty of time next week to dedicate at this scope. I'm not a great developer but I know a little how to package things with clickable even if I didn't manage yet to download and include third party packages in the clickable package, up to now.
    Don't worry, somehow we will be your hands and your eyes, in order to have your great app set and working on this platform 😉

  • @matteo Great! Looking forward

  • @rinigus good morning, first of all congratulate you for the great work you have done to portar pure maps to this mobile operating system, tell you that a version has already been released having tested and works, but what does not work or not yet implemented are the maps offline.you know when they will be operational? will be the same as in sailfish?a greeting

Log in to reply