Your rating: None Average: 5 (22 votes)

Kuri is a sport tracking application for Sailfish OS. Kuri means "run" in Esperanto. Funnily it also means "discipline" in Finnish.


  • On SFOS 4.5 some user have problems to start or install Kuri. This is related to the deprecation and removal of QtBluetooth. For user which are affected by this issue qtconnectivity-bluetooth from OpenRepos can be installed. A proper fix is not yet available
  • You need to enable the chum repo to resolve the Mapbox GL Native QML dependency for map display
    • download the chum rpm for your architecture
    • install the rpm, e.g. via the file browser
    • install Kuri (if installation still does not work, perform a `devel-su pkcon refresh`)
  • All strings should now be translatable, so please start translating
  • Not everyting from the new Record Page is working, yet
  • With v0.5 the location of the config file and recorded activities changed as preparation for a future Sailjail activation
    • config is now stored in '.config/org.kuri/kuri/kuri.toml'
    • activities are now stored in '.local/share/org.kuri/kuri'
    • activities are migrated on first start, config is not migrated

Kuri takes inspirations from MeeRun, but it will take some time until all of MeeRuns features are implemented.

This application is a fork of Laufhelden by jdrescher. The reason for the fork is that it isn't maintained anymore.

Thanks to translators!

  • Swedish - eson
  • Polish - kormil

License: GPLv3

Source code: https://gitlab.com/elBoberido/kuri

Icons: https://icons8.com

Bugs: https://gitlab.com/elBoberido/kuri/-/issues

Application versions: 
File harbour-kuri-0.1.0-1.armv7hl.rpm718.17 KB09/03/2020 - 02:21
File harbour-kuri-0.2.0-1.armv7hl.rpm725.91 KB08/04/2020 - 23:19
File harbour-kuri-0.2.1-1.armv7hl.rpm726.74 KB11/04/2020 - 17:50
File harbour-kuri-0.3.0-1.armv7hl.rpm723.05 KB16/04/2020 - 22:55
File harbour-kuri-0.3.1-1.armv7hl.rpm722.58 KB20/07/2020 - 21:56
File harbour-kuri-0.3.1-2.armv7hl.rpm722.74 KB20/07/2020 - 22:32
File harbour-kuri-0.3.2-1.armv7hl.rpm723.26 KB24/07/2020 - 12:52
File harbour-kuri-0.3.3-1.armv7hl.rpm723.66 KB19/10/2020 - 22:58
File harbour-kuri-0.3.4-1.armv7hl.rpm682.89 KB22/05/2021 - 00:04
File harbour-kuri-0.3.4-1.aarch64.rpm697.28 KB22/05/2021 - 00:04
File harbour-kuri-0.3.5-1.armv7hl.rpm732.01 KB22/05/2021 - 20:32
File harbour-kuri-0.3.5-1.aarch64.rpm746.79 KB22/05/2021 - 20:32
File harbour-kuri-0.3.7-1.armv7hl.rpm725.84 KB31/05/2021 - 23:33
File harbour-kuri-0.3.7-1.aarch64.rpm737.19 KB31/05/2021 - 23:33
File harbour-kuri-0.4.0-1.armv7hl.rpm2.14 MB03/07/2021 - 00:15
File harbour-kuri-0.4.0-1.aarch64.rpm484.16 KB03/07/2021 - 00:15
File harbour-kuri-0.4.1-1.armv7hl.rpm2.14 MB04/07/2021 - 21:25
File harbour-kuri-0.4.1-1.aarch64.rpm483.45 KB04/07/2021 - 21:25
File harbour-kuri-0.4.2-1.armv7hl.rpm2.14 MB10/07/2021 - 00:05
File harbour-kuri-0.4.2-1.aarch64.rpm484.21 KB10/07/2021 - 00:05
File harbour-kuri-0.4.3-1.armv7hl.rpm2.14 MB18/07/2021 - 23:14
File harbour-kuri-0.4.3-1.aarch64.rpm483.86 KB18/07/2021 - 23:14
File harbour-kuri-0.4.4-1.armv7hl.rpm2.14 MB18/03/2022 - 23:55
File harbour-kuri-0.4.4-1.aarch64.rpm484.16 KB18/03/2022 - 23:55
File harbour-kuri-0.4.5-1.armv7hl.rpm2.14 MB17/09/2022 - 19:16
File harbour-kuri-0.4.5-1.aarch64.rpm484.2 KB17/09/2022 - 19:16
File harbour-kuri-0.5.0-1.armv7hl.rpm1017.67 KB29/07/2023 - 17:32
File harbour-kuri-0.5.0-1.aarch64.rpm1003.49 KB29/07/2023 - 17:32
File harbour-kuri-0.5.1-1.armv7hl.rpm1018.45 KB01/08/2023 - 17:36
File harbour-kuri-0.5.1-1.aarch64.rpm1003.79 KB01/08/2023 - 17:36
File harbour-kuri-0.5.2-1.armv7hl.rpm1 MB23/08/2023 - 01:44
File harbour-kuri-0.5.2-1.aarch64.rpm1008.75 KB23/08/2023 - 01:44
File harbour-kuri-0.5.3-1.armv7hl.rpm1022.2 KB03/10/2023 - 02:24
File harbour-kuri-0.5.3-1.aarch64.rpm1005.82 KB03/10/2023 - 02:24

fix strava upload when access token needs refresh


jpennycook's picture

I started using the app yesterday. I recorded my third activity just now. The first run synced with Strava without problems. The second activity, a bike ride, did not sync so I exported my activities then uploaded the file that contained the GPS trace. My third activity did not sync.


Is there a way to manually upload activities to Strava from within the app without exporting all my activities as files and then using a web browser to upload?

dalas_revo's picture

Thank you for this great application! I really enjoy using it!

itoss's picture

Great Work ! Thanks for the App. Kuri is not able to restore the recorded data if the app/OS crashes or run out of battery. Are you planing to add this "restore" feature in future ?

regards and thanks ;)

elBoberido's picture

Thanks for the kind words. No, restore of aborted activities is currently not supported. It is on my todo list though. Not sure when it will be implemented since I currently don't have time for Kuri development. It shouldn't be too much work though, so you might be lucky and it will be done this year :)

msknight's picture

Thank you for the work on this package. I have succesfully installed it and uploaded my first workout to Strava.

Might I request the possibility to allow a setting to change from Km to Miles please?

elBoberido's picture

The support of imperial units is on my todo list but I currently have no time to spent on Kuri. Therefore it will take some time until this will be implemented. If there is someone willing to contribute I would appreciate patches. But please get in contact with me before starting to implement the feature.

nitrotnt's picture


nitrotnt's picture

Hello the last version 0.5 required qt bluetooth and not install it . This required isn't delete in previous version?

elBoberido's picture
nitrotnt's picture

This test version is successfully installed on my sfos 4.5 and i've a start and save a workout with success

elBoberido's picture

Unfortunately it will take some time for a proper fix but luckily there is a qtconnectivity-bluetooth package available on OpenRepos which provides the missing libraries.

elBoberido's picture

Great. I hope I can fix the Bluetooth issue soonish

nitrotnt's picture

Scuse me i wrong the required isn't libQT4bluetooth but libQT5bluetooth ! Yes i've installed mapbox gl and if install the rpm I've the same error

nitrotnt's picture


i've a problem to install on sfos 4.5 (xperia 10III) for missing library libqt4bluetooth.so. Is possible to solve it?Thank!

elBoberido's picture

I'm not sure what requires 'libqt4bluetooth.so'. It should not be required by Kuri itself. Can you try to install the latest version from the terminal with 'rpm -i harbour-kuri-0.4.5-1.aarch64.rpm'?

Have you installeld the MapboxGL Native QML bindings from the chum repo?

nitrotnt's picture

this is a output:

[defaultuser@Xperia10III Download]$ rpm -i harbour-kuri-0.4.5-1.aarch64.rpm  
errore: Dipendenze fallite:
       libQt5Bluetooth.so.5()(64bit) necessario a harbour-kuri-0.4.5-1.aarch64
       libQt5Bluetooth.so.5(Qt_5)(64bit) necessario a harbour-kuri-0.4.5-1.aarch64
       qt5-plugin-geoservices-osm >= 5.2.0 necessario a harbour-kuri-0.4.5-1.aarch64
       qt5-qtconnectivity-qtbluetooth >= 5.2.0 necessario a harbour-kuri-0.4.5-1.aarch64


elBoberido's picture

It seems there is an issue with fresh installs on SFOS 4.5. I'll check if I can provide a quick-fix the next days

elBoberido's picture

Please try https://openrepos.net/content/elboberidotesting/kuri-testing. It has no Bluetooth support but at least offers some limited functionality until a proper fix

Shocker's picture

Hello, thank you for great app, I have some questions:

  1. It is possible to add somehow in application configuration files custom online maps (like in OSM Scout application - more details in this thread)?
  2. During one workout I disconnected HR accidentally and there is no possibility to reconnect - so half of the activity I have without pulse saved. For example in Sports Tracker there is an option "reconnect HR"). Do you have any idea how to do it in Kuri?
  3. It is possible to add "average pulse" and "average speed" option like in Laufhelden to workout main screen?
  4. It is application cover broken in Kuri? I mean that in Laufhelden application cover is working properly during workouts, in Kuri not - see screenshot.

Regards, R.

elBoberido's picture


thanks, always great to have new users :)

1. I have to figure out how to to do it. If you have a link to a QML file from OSM Scout it would help a lot.

2. I know this problem and will fix it but I can't promise when it will be done

3. This will eventually also be available. I'm currently porting the application to Rust and also add tests to make it more robust

4. I'll have a look at it

Shocker's picture

Good to see that Kuri is still developed!

  1. Unfortunately I don't know the QML/QT language, so I can only send you link to QML directory from OSM Scout github. To this file I have to add additional maps providers, and then they appear in the application settings. Fast and easy.
  2. I will wait - we have time, for now bike season will end soon, so next big journeys in 2023 :)
  3. This is also good info, can you write something more - for example if after port will you implement some new features? :)
  4. If you want more info/details let me know. As regular user of your app I want to help somehow :)
elBoberido's picture

The cover page should now be updated with the latest recording data.

Regarding help. Are you able to build kuri from source? Once the port to Rust is finished it would be nice to have another tester before the release is done.

ABreen's picture

I've been using SportsTracker for so kong now I don't want to change plus it also means a change for those people I share SportsTracker with.

Is it not just a matter of setting up Kuri to be able to log into the SportTracker account to upload the data.

elBoberido's picture

I don't know. I did not find any developer documentation for SportsTracker, contrary to strava which has a public API.

I cannot really tell that much about the SportsTracker code and since it is not possible to create an accout via their website I also cannot test anything. Therefore this feature needs someone who has this itch and likes to scratch it.

ABreen's picture

I have a SportsTracker account which I'd like to use with Kuri. Is there anyway I might be able to help you fix the SportSTracker link?

elBoberido's picture

I'm not really familiar with the SportsTracker code. It seems to be mostly JavaScript. So if you have experience with JavaScript I would welcome some code contributions.

Since I don't have a SportsTracker account, I cannot really test anything and most probably will disable SportsTracker with the next release if there is nobody taking care of it.

Although I also don't use strava, at least it's easy to create an account and they have a documented API so it is more feasible to keep supporting it. Would it be an opion for you to switch to strava?

SKD's picture

Hello elBoberido,

First off all thank very much for your work! Unfortunately I never could get this app to work on my XA2 (the last ~1,5 years...). Laufhelden is still working. Whenever I want to start the app the icon appears for some time and then goes again. It NEVER starts. I did install the Chum repo as mentioned in your description. I would really appreciate getting this to work. Is there any possibility to see what actually causes the problem?

elBoberido's picture

Could you try to start the from the terminal and check the output?

From the top of my head, this is a list of things that might cause the issue

- corrupt config file -> check `~/.config/harbour-kuri/harbour-kuri.conf` and rename it

- missing dependencies, even with Chum repo enabled

- something corrupt in `~/Laufhelden` -> try to rename it

What SFOS version are you using?

SKD's picture

My current sailfish version is I just tried starting from terminal, here's the output (the 2 lines actually loop for quite some time at the "..."):

[nemo@XperiaXA2 ~]$ harbour-kuri

[W] unknown:0 - GStreamer; Unable to pause - "file:///home/nemoaudio/hr_toohigh_de_male.wav"

[W] unknown:0 - O2::refresh: No refresh token

[W] unknown:0 - O2::onRefreshError:  QNetworkReply::NetworkError(AuthenticationRequiredError)

[W] unknown:0 - O2::refresh: No refresh token

[W] unknown:0 - O2::onRefreshError:  QNetworkReply::NetworkError(AuthenticationRequiredError)

[W] unknown:0 - O2::refresh: No refresh token


[W] unknown:0 - O2::onRefreshError:  QNetworkReply::NetworkError(AuthenticationRequiredError)

Segmentation fault (core dumped)

[nemo@XperiaXA2 ~]$


Does this tell you anything? :)

elBoberido's picture

The good news is that kuri 0.5 will use Amber Web Authorization instead of O2, which should fix this. The bad news is that I don't know when it's ready.
I'll have a closer look at this later.

Do you use strava with Laufhelden? If yes, could you log out before starting kuri?
Did you try to rename `~/.config/harbour-kuri/harbour-kuri.conf`? Please don't delete it. If it fixes the problem it will help to fix the bug.