Tiny Core Linux
Tiny Core Extensions => TCE Talk => Extension requests => Topic started by: pq5190362 on October 02, 2016, 11:59:48 AM
-
Hi,
any chance you could add the "Onboard" virtual on-screen keyboard to the Tiny Core Linux repo:
https://launchpad.net/onboard
?
It's the default virtual on-screen keyboard in Ubuntu and it is pretty nice.
Unfortunately the only virtual on-screen keyboard that seems to be currently available from the Tiny Core Linux repo, is xvkbd (http://t-sato.in.coocan.jp/xvkbd/), which is much worse than Onboard and feels very outdated.
Onboard even has features like auto-hide and it can pop up near to the text input field and even has word predictions and so on.
Any chance you could add it?
Regards
-
Yes, xvkbd isn't my favorite either.
I tried to build Onboard, which succeeded, but I'm getting
$ onboard
Traceback (most recent call last):
File "/usr/local/bin/onboard", line 32, in <module>
from Onboard.Exceptions import chain_handler
File "/usr/local/lib/python3.5/site-packages/Onboard/__init__.py", line 23, in <module>
from Onboard.utils import Translation
File "/usr/local/lib/python3.5/site-packages/Onboard/utils.py", line 38, in <module>
from gi.repository import GLib
ImportError: No module named 'gi'
The web says I'm missing python-gobject but that's installed.
-
What is missing is the gobject-introspection module.
-
Have that loaded as well.
-
pygobject compiled for python3 is what is missing, see:
http://tinycorelinux.net/7.x/x86_64/tcz/src/py3gobject/compile_py3gobject
..note that you'll need to decide whether to compile against python3.4 or 3.5 and you'll also need pycairo compiled for the same version of python3, see:
http://tinycorelinux.net/6.x/x86_64/tcz/src/py3cairo/compile_py3cairo
have fun :)
-
since it looked like an easier task..
...python3-onboard posted to the corepure64 repo
-
have fun :)
:p
compile_py3cairo mentions two patches, which I found here: http://www.linuxfromscratch.org/blfs/view/svn/general/python-modules.html#pycairo
I guess I don't necessarily need pushd and popd?
I'm getting an error that tells me nothing.
#!/bin/sh :: Tiny Core 7.2 :: Linux 4.2.9-tinycore
22:48:32 tc@box:/tmp/pycairo-1.10.0/$> patch -Np1 -i ../pycairo-1.10.0-waf_unpack-1.patch
patching file waf
Hunk #1 succeeded at 153 with fuzz 2.
22:48:50 tc@box:/tmp/pycairo-1.10.0/$> PYTHON=/usr/local/bin/python3.5 ./waf unpack
/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6
22:49:02 tc@box:/tmp/pycairo-1.10.0/$> cd /tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/
22:49:10 tc@box:/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/$> patch -Np1 -i ../../pycairo-1.10.0-waf_python_3_4-1.patch
patching file waflib/Tools/python.py
22:49:23 tc@box:/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/$> cd ..
22:49:28 tc@box:/tmp/pycairo-1.10.0/$> PYTHON=/usr/local/bin/python3.5 ./waf configure --prefix=/usr/local
./options()
Setting top to : /tmp/pycairo-1.10.0
Setting out to : /tmp/pycairo-1.10.0/build_directory
./configure()
Checking for 'gcc' (c compiler) : ok
Checking for program python : /usr/local/bin/python3.5
python executable '/usr/local/bin/python3.5' different from sys.executable '/usr/local/bin/python'
Checking for python version : (3, 5, 2, 'final', 0)
Traceback (most recent call last):
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 93, in waf_entry_point
run_commands()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 145, in run_commands
run_command(cmd_name)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 138, in run_command
ctx.execute()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 124, in execute
super(ConfigurationContext,self).execute()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Context.py", line 87, in execute
self.recurse([os.path.dirname(g_module.root_path)])
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Context.py", line 127, in recurse
user_function(self)
File "/tmp/pycairo-1.10.0/wscript", line 29, in configure
ctx.check_python_headers()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
return f(*k,**kw)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/python.py", line 146, in check_python_headers
result=conf.check(lib=name,uselib='PYEMBED',libpath=path,mandatory=False,msg='Checking for library %s in LIBDIR'%name)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
return f(*k,**kw)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/c_config.py", line 357, in check
ret=self.run_c_code(*k,**kw)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
return f(*k,**kw)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/c_config.py", line 435, in run_c_code
bld.compile()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Build.py", line 190, in compile
self.store()
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Utils.py", line 300, in f
ret=fun(*k,**kw)
File "/tmp/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Build.py", line 164, in store
cPickle.dump(data,f)
AttributeError: Can't pickle local object 'Context.__init__.<locals>.node_class'
Checking for library python3.5 in LIBDIR : 22:49:51!tc@box:/tmp/pycairo-1.10.0/$>
-
a couple more patches are needed for python3.5:
http://tinycorelinux.net/7.x/x86/tcz/src/py3cairo
py3cairo posted
-
Ah, gobject-introspection too old..
-
too old for python3.5 you mean?
-
pygobject-3.22.0
Requested 'gobject-introspection-1.0 >= 1.46.0' but version of gobject-introspection is 1.42.0
-
I'd suggest to use pygobject-3.14, which more closely matches the vintage of the other gtk+ stuff?
-
pygobject-3.16.2 built successfully.
-
Great :)
note the deps needed to get the corepure64 version working:
http://tinycorelinux.net/7.x/x86_64/tcz/python3-onboard.tcz.dep
-
Aha, gtk3-gir.tcz was missing and dbus needs to be running.
but
onboard
14:41:31.001 WARNING OnboardGtk: D-Bus bindings unavailable Onboard will start with reduced functionality. Single-instance check, D-Bus service and hover click are disabled.
14:41:31.009 ERROR Config: gsettings schema for 'org.onboard.keyboard' is not installed
-
dbus doesn't need to be running, but you do need this in the extension start-up script:
#!/bin/sh
glib-compile-schemas /usr/local/share/glib-2.0/schemas
gtk-update-icon-cache -q -f -t /usr/local/share/icons/hicolor
gtk-update-icon-cache -q -f -t /usr/local/share/icons/HighContrast
-
..and as per the dep file, you'll need dbus-python3 for the added dbus functionality ;)
-
Never ending story... Thanks for holding my hand. I'll keep digging.
-
Just wondering:
Have you had any success with this in the meantime ;) ?
-
Got distracted by other things. Will return to this soon. I need an easy onscreen keyboard too.
-
Not sure if this is helpful. Imported onboard in dCore-xenial, complex, 192 packages, didn't even launch. Imported florence , 154 packages, launched okay but crashed when using it, might just need some configuration, maybe florcence is an easier alternative to compile.
** (florence:17981): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
** (florence:17981): ERROR **: AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?
-
Not intending to offend anyone, but Florence is a joke compared to Onboard. If you want to see if for yourself, just boot up Ubuntu 16.10 or one of it's variants in a virtual machine or via a live CD. The latest versions of Onboard and Florence are both available in the Ubuntu Yakkety repositories (or use the Onboard PPA (https://launchpad.net/~onboard/+archive/ubuntu/stable) when you are on 16.04 Xenial).
By the way, just noticed that the Qt Virtual Keyboard has been open sourced this year:
http://code.qt.io/cgit/qt/qtvirtualkeyboard.git/
http://doc.qt.io/QtVirtualKeyboard/index.html
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/
http://plfiorini.blogspot.de/2016/04/qt-virtual-keyboard-support-on-hawaii.html?m=1
It looks pretty incredible and even better than Onboard, see following two videos:
https://youtu.be/yIsQHinTw00
https://youtu.be/EyeDZLGIwbM
:)
Maybe Qt Virtual Keyboard would be an even better option :)?
Wasn't able to try it out yet, since unfortunately no Linux distribution seems to have packaged it yet... :(
-
Looks like the Qt Virtual Keyboard seems to be part of Qt 5.7:
https://lists.debian.org/debian-kde/2016/03/msg00033.html
:D
Qt 5.7 is available in the 64-bit repo:
http://repo.tinycorelinux.net/7.x/x86_64/tcz/qt-5.x-all.tcz.info
But has anyone any idea how to actually start the Qt Virtual Keyboard?
Did:
export QT_IM_MODULE=qtvirtualkeyboard
export GTK_IM_MODULE=qtvirtualkeyboard
as suggested on:
http://plfiorini.blogspot.com/2016/04/qt-virtual-keyboard-support-on-hawaii.html
but it doesn't seem to work.
The keyboard is not showing up when putting the cursor in a text field.
Anyone here who has more luck?
Entering qtvirtualkeyboard into a terminal also does not launch the keyboard.
-
Florence seems to be tightened to gnome. Don't know how many dependency holes I would encounter. I'm not interested in building that.
Qt Virtual Keyboard doesn't seem to be a stand alone app? Also quite some heavy deps just for a keyboard.
-
Did you succeed in building it?
-
No. I'll stick with XVKBD for now. It's old but works and doesn't need a ton of deps.