[C2] Predictive Text Input on SailfishOS 5.0.0 missing?

Does anyone know how to activate predictive text input (English) for Sailfish 5.0.0.21? It seems as if XT9 has been removed from the Jolla Store?

1 Like

AFAIK predictive text was removed from Sailfish X for all newly licensed devices some time ago (i.e. If you already have it on an existing device then it will remain there). Apparently there was some issue over Jolla’s access to this product. At the time it was said they were looking for a replacement solution, but I don’t think anybody’s heard anything about this since.

Does Presage works with JollaC2?

It seems to work on C2 - however “out of the box” it’s only adding/remembering words you have already typed… to use it with a spell check seems a little complicated:

Is there no “easy way” to get predictive text input (incl. spell check) on the C2 ??

1 Like

Can anyone make an Presage Norwegian NB_no keyboard?

The XT9 software component was licensed from a third party. Jolla seems to have lost this license by reconstituting itself as Jollyboys. Consequently XT9 is not available for new SailfishOS installations, but is retained when upgrading older installation (e.g. on Sony Xperias) and in older installation images (¿of SFOS < 4.5.0?).

AFAIK there are dictionaries available for Presage, IIRC their source(s) were denoted in Presage’s explanatory texts.

Disclaimer: I have never used Presage.

E.g. you!

It is Open Source Software and documented.

Sorry, but I’m not enough competent to do this kind off job.

so all we need to do is preserve the XT9 packages from running devices :innocent:

1 Like

I’m going to have a crack at a Colemak keyboard today. If that works and I can find a Norwegian corpus I’ll try to make you one with your layout.

Edit: unfortunately not having much luck, the only way I could make Colemak work was to install @ringus’s English US keyboard, reboot the phone a handful of times, confirm that worked, then edit /usr/share/maliit/plugins/com/jolla/layouts/en-presage.qml to match the Colemak layout and restart the keyboard. If I tried to build a dedicated Colemak rpm by following the steps at sailfishos-presage-predictor/utils/keyboard at master · sailfish-keyboard/sailfishos-presage-predictor · GitHub, I’d end up without predictive text working no matter how many times I restarted the phone.

1 Like

Technically you can execute this on a device with the correct architecture {aarch64|armv7hl|i486} (i.e. aarch64 targetting the Jolla C2) and SailfishOS 4.5.0 installed (4.6.0 may also work, and is preferable then, because it provides slightly newer packages; you should yield at least the package versions listed below, which are from 4.4.0 on aarch64), to preserve the XT9 RPM packages for reinstallation later (note that this is a single command line!):

mkdir -p xt9-rpms; for i in $(pkcon -p search name xt9 | tr -s ' ' | cut -s -f 2 -d ' ' | fgrep '.jolla.' | rev | cut -s -f 3- -d '-' | rev; echo jolla-handwriting); do pkcon download xt9-rpms $i; sleep 1; done

If you wonder, why this is performed in such a complicated way: PackageKit including its command-line front-end pkcon is a piece of shit, because it loves to fail when tasked with more than one thing at a time and when commanded in quick succession. Hence the for loop, downloading one package at a time and waiting a second between pkcon commands. Also there might be RPM repositories subscribed which offer XT9-related Patches, hence the filtering.

This should download (at least) these packages (as an example the XT9 packages for SailfishOS 4.4.0 on aarch64):

feature-xt9-0.0.7-1.3.2.jolla.aarch64.rpm
jolla-handwriting-0.1.5-1.3.2.jolla.aarch64.rpm
jolla-keyboard-settings-xt9-0.8.28.3-1.7.2.jolla.aarch64.rpm
jolla-xt9-0.5.19-1.5.2.jolla.aarch64.rpm
jolla-xt9-cp-0.2.12-1.3.2.jolla.aarch64.rpm
patterns-sailfish-xt9-0.0.7-1.3.2.jolla.aarch64.rpm
# Only on aarch64:
jolla-xt9-server-0.5.19-1.4.61.jolla.aarch64.rpm 

You can check that you indeed have downloaded all packages from the XT9 repository by comparing the downloaded packages (ls -1 xt9-rpms/) with the output of zypper pa -r xt9 (thanks @explit).

P.S.: BTW, Neuntrainer is a nice tool to fill your XT9-dictionary.

Edit: This executes the job more elegantly when you have zypper installed (by pkcon install zypper) and does not require checking as it is guaranteed to download all packages from the XT9 repository (but not jolla-keyboard-settings-xt9, because it is from a different repository):
mkdir -p xt9-rpms; for i in $(zypper pa -r xt9 | fgrep xt9 | cut -s -f 3 -d '|'); do pkcon download xt9-rpms $i; sleep 1; done

6 Likes

I think you forgot download command from the last pkcon, or at least on my Xperia 10 this monstrosity errors?

mkdir xt9-rpms; for i in $(pkcon -p search name xt9 | tr -s ' ' | cut -s -f 2 -d ' ' | grep '\.jolla\.' | rev | cut -s -f 3- -d '-' | rev | tr '\n' ' '); do pkcon download xt9-rpms $i; sleep 1; done

works just fine instead.

List of packages on SFOS 4.6 on Xperia 10 (armv7hl):

feature-xt9-0.0.7-1.2.7.jolla.armv7hl.rpm
jolla-keyboard-settings-xt9-0.9.7-1.10.1.jolla.armv7hl.rpm
jolla-xt9-0.5.22-1.6.3.jolla.armv7hl.rpm
jolla-xt9-cp-0.2.15-1.4.2.jolla.armv7hl.rpm
patterns-sailfish-xt9-0.0.7-1.2.7.jolla.armv7hl.rpm
4 Likes

you forgot the package jolla-handwriting, guys

The command zypper pa -ir <repo_name_or_number>
checks all files from the repo.

5 Likes

Thank you @avhakola and @explit for your helpful input: I rectified and improved my original post accordingly.

2 Likes

On Xperia10, this updated command downloads everything else except jolla-handwriting-0.1.7-1.3.3.jolla.armv7hl.rpm (gives error about not finding package jolla-handwriting)

This new command downloads everything else, except jolla-keyboard-settings-xt9-0.9.7-1.10.1.jolla.armv7hl.rpm (this package isn’t inside the xt9-repo)

Updated list of packages on SFOS 4.6 on Xperia 10 (armv7hl) after running both commands:

feature-xt9-0.0.7-1.2.7.jolla.armv7hl.rpm
jolla-handwriting-0.1.7-1.3.3.jolla.armv7hl.rpm
jolla-keyboard-settings-xt9-0.9.7-1.10.1.jolla.armv7hl.rpm
jolla-xt9-0.5.22-1.6.3.jolla.armv7hl.rpm
jolla-xt9-cp-0.2.15-1.4.2.jolla.armv7hl.rpm
patterns-sailfish-xt9-0.0.7-1.2.7.jolla.armv7hl.rpm
2 Likes

on 10ii, I have also downloaded jolla-xt9-server-0.5.22-1.5.5 but this is for aarch64 so maybe not available for armv7hl?

1 Like

I have installed English (Presage) keyboard on my Xperia 10 IV running sfos 4.6.0.15. This keyboard is working as expected. I have no option to install any norwegian Jolla-XT9 keyboard. That’s pity.

I don’t know how the implementation differs between aarch64 and armv7hl, but the missing jolla-xt9-server package on my Xperia10 was the reason I posted my package list, so people wouldn’t panic over why they might not get exactly same packages, as @olf listed in his post, depending on their phone.

2 Likes

Well, works for me. I would assume this to be caused by a typo, but as you seem to be quite precise and likely have copy&paste’ed the command line, I slightly altered it again, just to be on the safe side. Using either Bash (which I am using) or busybox-ash as a shell interpreter may make a subtle difference here.

Yes, sure, because …

…, though many thanks, I did not notice this in the first place.

Please note that all this is a bit of a bet, because we do not know (yet) if these packages will be installable on SailfishOS 5.x releases; for 5.0 one can at least try (currently on a Jolla C2, only).

AFAIK nobody has yet analysed which packages comprise the minimal set to get XT9 running, though I would first try with installing them all after having taken a look, if any of these packages is available on the target device (pkcon search name xt9; pkcon search name handwriting).

Yes, this package seems to only exist for aarch64.

1 Like

Copy&paste. It would have taken too many tries to get it right, if I had tried to copy the commands by typing it myself :wink:

I just tested, and the echo did do the trick on busybox-ash, and now it downloads everything with the first command.

I’m not expecting anything and probably will never use these rpms for anything. I was just curious to see what I would get with your command on my Xperia10, and see if there are any differences in the package lists between armv7hl and aarch64.

1 Like