Onboard instead of Caribou - how?

Asked by Dmitry Sutyagin on 2016-02-03

Hi,

I would like to have onboard start instead of Gnome keyboard. I read this https://help.gnome.org/admin/gdm/stable/configuration.html.en but Gnome 3 uses Caribou instead for which there is no such instruction.
Caribou pops up now and then, and also Onboard does not autostart even though I have /etc/xdg/autostart/onboard-autostart.desktop with the following content:

[Desktop Entry]
Name=Onboard
Exec=onboard --not-show-in=GNOME,GNOME-Classic:GNOME
Type=Application
NoDisplay=true
X-Ubuntu-Gettext-Domain=onboard
AutostartCondition=GSettings org.gnome.desktop.a11y.applications screen-keyboard-enabled
X-GNOME-AutoRestart=true
OnlyShowIn=GNOME;Unity;MATE;

This is the default that is installed with the package.

Please let me know what I have to change to substitute Caribou with Onboard and make it autostart both on login screen and inside my session.

Question information

Language:
English Edit question
Status:
Solved
For:
Onboard Edit question
Assignee:
No assignee Edit question
Solved by:
Dmitry Sutyagin
Solved:
2016-02-18
Last query:
2016-02-18
Last reply:
2016-02-18
marmuta (marmuta) said : #1

Thanks for your interest in Onboard.
Onboard does not autostart in GNOME Shell on purpose - in order to not interfere with their built-in keyboard. If you want Onboard to autostart when GNOME's "Screen Keyboard" setting is turned on, then remove "--not-show-in=GNOME,GNOME-Classic:GNOME" from /etc/xdg/autostart/onboard-autostart.desktop.

I haven't tried to run Onboard in GDM myself, but reportedly it still does. See
https://bugs.launchpad.net/onboard/+bug/1210665/comments/6

For the rest, by popular request, I'm working on a shell extension that will hopefully allow for better integration into GNOME Shell.
https://bugs.launchpad.net/bugs/1538627
It's in its earliest stages, though. Nothing to show yet.

Dmitry Sutyagin (dsutyagin) said : #2

Thank you for the answer. I have removed that line and now onboard launches well when I login. But it is still missing on login screen.

I think this is because login uses Wayland and not X. I will try to switch login screen to X and see if this makes onboard start there.

Dmitry Sutyagin (dsutyagin) said : #3

I have disabled Wayland by editing /etc/gdm/custom.conf, but the onboard is still not visible on login screen.
I have checked through another tty that is is actually running, but it is not visible. I thought that maybe the settings are auto-hide by default and added and extra .desktop file to launch onboard-settings. This did not help because settings window is also not visible, even though the process is running. I am open to any suggestions.

marmuta (marmuta) said : #4

start-minimized and auto-show should be off by default, that's probably not it. It might crash on something, maybe there's no D-Bus session bus. Trunk is more resilient in the regard, I worked on that just recently. Same with onboard-settings.

I'll try myself to get it to run, but it'll probably be late at night today.

marmuta (marmuta) said : #5

Tried it and no success here either. I'll see if I can debug this another time. The worst case would be if only clutter actors can be shown in GDM, like in activities. We'll see.

Boris Burkov (vasjaforutube) said : #6

Dima, to autostart Onboard on greeter/login screen, try creating a .desktop file for Onboard in:

/usr/share/gdm/greeter/autostart/onboard.desktop

And removing caribou-antler desktop file. This will make (unstyled, but still functional) Onboard appear on your greeter/login screen, so that you'll be able to enter your password. This worked for me on Debian 7.

It was quite painful to get rid of caribou-antler, though. I just deleted its .service file in dbus configuration: /usr/share/dbus-1/ (services or system-services, can't recall).

Dmitry Sutyagin (dsutyagin) said : #7

Boris, thanks for the guide. I have tried it on my Arch and it did not work - after I have removed the caribou .service files from /usr/share/dbus-1/services and rebooted I still got caribou keyboard popping up on both login screen and in GNOME... Maybe there's something else in play.

Anyways, I gave up getting onboard on login screen since I only need to enter my password there and forget about it, and for the main session I have found what looks like the best solution - https://extensions.gnome.org/extension/992/onboard-integration/ - just works (for session only, not for login screen - but maybe it's possible to transfer the changes it does to the greeter, don't know). Sure I had to set up GNOME Integration Extension first in browser but that wasn't too hard, and this extension got me rid of caribou and makes onboard pop up instead.