[C2] Predictive Text Input for Sailfish 5.0.0.21 missing?

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

Jost for refernce, on SFOS 4.4 aarch64, the resulting packages are:

-rw-r--r--    1 root     root          9037 Nov 14 00:15 feature-xt9-0.0.7-1.3.2.jolla.aarch64.rpm
-rw-r--r--    1 root     root       2321953 Nov 14 00:06 jolla-handwriting-0.1.5-1.3.2.jolla.aarch64.rpm
-rw-r--r--    1 nemo     nemo         40093 Nov 13 23:57 jolla-keyboard-settings-xt9-0.8.28.3-1.7.2.jolla.aarch64.rpm
-rw-r--r--    1 root     root         90161 Nov 14 00:07 jolla-xt9-0.5.19-1.5.2.jolla.aarch64.rpm
-rw-r--r--    1 root     root         81857 Nov 14 00:07 jolla-xt9-cp-0.2.12-1.3.2.jolla.aarch64.rpm
-rw-r--r--    1 root     root          8317 Nov 14 00:15 patterns-sailfish-xt9-0.0.7-1.3.2.jolla.aarch64.rpm
nemo@PGXperiiia10:~/Downloads/xt9-rpms $

Though I would never do this myself, a friend told me that simply adding the repos of a previous release to a 5.0 device, like

ssu ar xt9-4.5  https://store-repository.jolla.com/features/4.5.0.25/xt9/aarch64/
zypper ref
zupper up feature-xt9

may install predictive text for 5.0 devices.
The friend also sais that it actually does work.

6 Likes

Really loving the CYOA (cover your own arse - friend :wink: )

1 Like

ssh tells me:

[defaultuser@JollaC2 ~]$ pkcon search name xt9
Searching by name                                                                                                                                                                                                                                                              
Starting                                                                                                                                                                                                                                                                      
Finished                                                                                                                                                                                                                                                                      
Installed   	feature-xt9-0.1.1-1.3.1.jolla.aarch64 (installed)           	Feature for supporting xt9
Available   	jolla-keyboard-settings-xt9-0.9.10-1.13.1.jolla.aarch64 (jolla)	Settings snippet for xt9 specific configuration
[defaultuser@JollaC2 ~]$ pkcon search name handwriting
Searching by name                                                                                                                                                                                                                                                              
Starting                                                                                                                                                                                                                                                                      
Finished                                                                                                                                                                                                                                                                      
[defaultuser@JollaC2 ~]$
[defaultuser@JollaC2 ~]$ devel-su pkcon install jolla-keyboard-settings-xt9
Password: 
Resolving                                                                                                                                                                                                                                                                      
Testing changes                                                                                                                                                                                                                                                                
Finished                                                                                                                                                                      [                                                                                      ] (0%)  
The following packages have to be installed:
 jolla-keyboard-settings-xt9-0.9.10-1.13.1.jolla.aarch64	Settings snippet for xt9 specific configuration
Proceed with changes? [N/y] y

                                                                                                                                                                                                                                                                              
Testing changes                                                                                                                                                                                                                                                               
Installing                                                                                                                                                                                                                                                                     
Starting                                                                                                                                                                                                                                                                       
Installing packages                                                                                                                                                                                                                                                           
Downloading packages                                                                                                                                                                                                                                                          
Installing packages                                                                                                                                                                                                                                                           
Finished                                                                                                                                                                                                                                                                      
[defaultuser@JollaC2 ~]$ 

Your friend did a typical typo! zypper with an u… :wink:

zupper up feature-xt9

Can someone upload a working german Presage-Keyboard?

I did try to follow the instruction of sailfishos-presage-predictor/utils/keyboard/README.md at master · sailfish-keyboard/sailfishos-presage-predictor · GitHub

but end up here:

[root@JollaC2 layouts]# ls
bg.qml                    el.qml                    gu.qml                    layout_tt.conf            lt.qml                    pa.qml                    sl.qml
bn.qml                    emojis.qml                hi.qml                    layouts_emojis.conf       lt_std.qml                package-keyboard.sh       sv.qml
cs.qml                    en.qml                    hu.qml                    layouts_en.conf           lv.qml                    pl.qml                    ta.qml
da.qml                    es.qml                    it.qml                    layouts_indian.conf       ml.qml                    pt.qml                    te.qml
de.qml                    et.qml                    keyboard-presage-XX.spec  layouts_kk.conf           mr.qml                    ro.qml                    tr.qml
deutsch-presage.conf      fi.qml                    kk.qml                    layouts_ru.conf           nl.qml                    ru.qml                    tt.qml
deutsch-presage.qml       fr.qml                    kn.qml                    layouts_western.conf      no.qml                    sk.qml                    uk.qml
[root@JollaC2 layouts]# sh package-keyboard.sh Deutsch de_DE 1.0.0 deutsch-presage.qml deutsch-presage.conf
tar: can't execute 'xz': No such file or directory

Or as an alternative, make xt9 for c2 great again

Thank you all for your help regarding predictive text input!

So I did run the following on my daily driver Sony Xperia 10 III:

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

My plan was to copy the resulting rpm packages to the C2 and install there.

However, after rebooting my Xperia 10 III it the keyboard is completely gone. It should not have been affected / deleted by above command?

I’ve tried to restart the keyboard from within the “Utils”, and I’ve tried to (re)install the rpm packages resulting from the command, rebooting etc.

The keyboard is gone, and this is my daily driver…

Any idea on how to get my keyboard back?

Your help is very much appreciated!!

Try doing devel-su pkcon install xz and then try again.

1 Like

As you suspect, unless you installed one or more of the files, that command can’t be related to your keyboard being gone.
Something else must be the reason.

Did you install or uninstall any other software?

What do the following commands say?

systemctl --user status maliit-server
systemctl --user status xt9-server.service

But I guess in order to revert the installation, so something like:

devel-su
for pkg in  feature-xt9 jolla-keyboard-settings-xt9 jolla-xt9 jolla-xt9-cp  jolla-xt9-server patterns-sailfish-xt9
do
pkcon remove $pkg
done
pkcon install  feature-xt9
2 Likes