Your rating: None Average: 5 (47 votes)

OKBoard (a.k.a. Magic Keyboard) is a gesture based keyboard that allow single stroke typing. Usage is explained in this video. English, French and Dutch are supported without the need for additional packages, other language resources are available in separate packages, e.g. for Swedish (okb-lang-sv). It should work on any Sailfish phone with screen size from 4.5" to 5".

Do not use other third party keyboards at the same time (unless they are just simple layouts for new languages).

Source code: http://git.tuxfamily.org/okboard/okb-engine.git/ and http://git.tuxfamily.org/okboard/okb-keyboard.git/. Instructions for adding new languages are included in README.md files (latin alphabet only at the moment)

If you get an error message about missing dbus-python rpm file when installing, just run "pkcon refresh" as root and try again.



Application versions: 
File okboard-full-0.6.15-1.armv7hl.rpm10.54 MB10/05/2018 - 17:33
File okboard-full-0.6.16-1.armv7hl.rpm10.54 MB06/09/2018 - 20:22
File okboard-full-0.6.17-1.armv7hl.rpm10.54 MB18/11/2018 - 21:18
File okboard-full-0.6.18-1.armv7hl.rpm10.33 MB08/04/2019 - 11:41
File okboard-full-0.6.19-1.armv7hl.rpm10.33 MB22/04/2019 - 14:09

0.6.19: Fix for missing swipe candidates selection in the top bar. This bug was introduced in the previous version. Thanks rob_k for reporting the issue

0.6.18: SFOS 3.0.2 support. Do not use for older SFOS versions

0.6.17: Fix for SFOS 3.0 & for sound issue. This version is for SFOS 3 only. If you have an older version stay with 0.6.16 at the moment.

0.6.16: fix for SFOS 2.2.1 Nurmonjoki ... Thanks ade for the fix.

0.6.15: bug fixes

  • Fix for words that become impossible to type and to re-learn
  • Upgrading issue (keyboard would not appear after an upgrade)

Do not use the 0.6.11/12 that were temporarily published


eber42's picture

This looks similar to the issue damoleon reported a few comments below. Try 'pkcon refresh' and let us know if it works.

meegouser's picture

Yes, that worked. The installation took forever and Warehouse froze plenty times, but now it runs very well (including German package). Thanks for the tip!

ade's picture

Hi Eber42,
By default, OKBoard doesn't work with for example the various arrow keyboard by tmi. The reason is the language can't be properly detected.

The function updateContext in Gribouille.qml strips ".qml" from the filename to determine the language. That's okay if you have en.qml, but not if you have en_arrows.qml. If you do a substr(0,2) to get the first to characters it does work. Not sure if for example pt-BR will ever occur as language code, because than that code has to be a bit smarter.

eber42's picture

It will be included in the next release.

ade's picture

Kind reminder it is still not included in the latest release.

eber42's picture

It is supposed to be fixed in the current version (with a different fix than the one you suggested).
Could you give the reference of the arrow keyboard you use so that I could try it myself ?

ade's picture

I just looked at the code and did not see a change there, so applied my own fix again.
But you are right, it is already working without my suggested change. Thanks and sorry for my false conclusion.

Feathers_McGraw's picture

Thanks for your continued development and efforts to improve the experience on large screens/high DPI devices, it's working great for me on Fairphone 2 (although I had to uninstall and reinstall before the keyboard would show up - just restarting the device or the service wasn't sufficient).

Search accuracy is much better now, and the thickness of the line is better too.

I noticed I now get search suggestions in the bar above the keyboard even without the proprietary prediction library installed. Is that a new feature? If so, thank you again. Keeps getting better and better :)

eber42's picture

Thanks for your suggestion to use a Nexus 5 for testing, it allowed me to discover a lot of issues (including the regressions when the xt9 library is missing. The new release includes workarounds for these).

The issue with need to uninstall/reinstall has been widely reported but I have not been able to reproduce it so I do not know to solve it at the moment (I will probably seek guinea pigs for next release)

damoleon's picture

Hi, I've just tried on my jolla 1 version 2.1.0 through warehouse but I get Transaction /1290_baaeaece

Status: repo-not-available

Extra details :

File'.:mw/armv7hl/libpython3_4m1_0-3.4.3-1.6.3.armv7hl.rpm' not found on medium 'https://releases.jolla.com/releases/'

Is there a workaround I could use ?


EDIT :  I Solved it running pkcon refresh

campeon's picture

Please, update it to be improve the use with Jolla C or Intex.

I would mind to pay a little for its use.

campeon's picture

i tried with  jolla C and it works amazing  !!!



eber42's picture

It runs, but you get a fairly degraded user experience which is absolutely not representative of how it is supposed to behave. Apart from that, you should not have any issue.

Support for 5" devices is planned (when I manage to find one)


erlen's picture


I updated it today, I am using the french keyboard, and when OKboard is activated the keyboard doesn't appear. When I turn it off, I recover the normal keyboard.

Do you have any idea what could be the problem?


eber42's picture

Enable logs in the settings applications, start the keyboard and send me a copy of the logs (they are located in ~/.local/share/okboard) ... and use French in e-mail communication :-)

erlen's picture

The only file edited is prediect.log and it is empty.
And it is not working with english version neither.

Maybe it could be link with a package in patchmanager I will check, or a conflict with the file of the previous version?

erlen's picture

Ok it works, I remove the apps and install again and no more problem, conflict apparently.

eber42's picture

And if there is not recent log, just run the following command and send me the output:

killall maliit-server ; maliit-server


rinigus's picture

I stumbled on the same problem - with OKboard 0.6 enabled, the keyboard did not appear. The logs were empty as well. So, I followed your advice and got maliit-server crash on the terminal while enabling OKboard:

killall maliit-server; maliit-server
WARNING: Defaulting to webview scaling factor of 1.0
WARNING: file:///usr/lib/maliit/plugins/okboard_sfos1.qml:117:5: QML DBusAdaptor: Faile
d to register object/com/jolla/keyboard
WARNING: file:///usr/lib/maliit/plugins/okboard_sfos2.qml:117:5: QML DBusAdaptor: Faile
d to register object/com/jolla/keyboard
WARNING: bool MIMPluginManagerPrivate::loadPlugin(const QDir&, const QString&) Error lo
ading plugin from "/usr/lib/maliit/plugins/set_symlink.sh" "'/usr/lib/maliit/plugins/se
t_symlink.sh' is not an ELF object"

After uninstalling OKboard and installing it again, all worked fine.

Thank you for working on it!

247's picture

for italian language, the keyboard hang up everytime you press a single letter...and suggestion always gives error...maybe the italian dictionary has to be updated too?

spidernik84's picture

Most definitely due to the version discrepancy. I will do my best to update the dictionary today. No guarantees :)

spidernik84's picture

I just saw eber42 remarks on waiting for a few days before redoing the dictionaries. I will prepare the necessary for the compilation, meanwhile.

ahmadhsalim's picture

Is it possible to compile this to ubuntu touch???

eber42's picture

It should be possible as Ubuntu touch also uses QML & maliit.

Mariusmssj's picture

Love this app but the only two quibles are the transparancy in some apps being way too hight so it's hard to see the keys and no auto space in android applications.

Are there any plans for updats that fix those issues?

Thank you :)

eber42's picture

Transparency issue is fixed.

I do not know how to improve the auto spacing (may require modifications in android support and/or maliit server)

Mariusmssj's picture

LOVE the update, thank you so much!!! Really appreciate all of your hard work

bambusmatte's picture

When I try to install the 0.5.10 .rpm file I get an Error: Missing dependencies: libpython3.4m.so.1.0 and pyotherside-qml-plugin-python3-qt5 >= 1.2.0

I use linux on my laptop, but I have no experience on sailfish... how do I add those? Or am I missing a step here?


edit: i use sailfish

spidernik84's picture

I've been testing the keyboard with the English and the Italian language. It works very well.
I'd say the transparency issue and the no-autospace in Android apps are the only two bummers, so far. I have hope.

247's picture

works very well but unfortunately i have transparency problems too...any fix?