Tiny Core Linux
Tiny Core Extensions => TCE Bugs => Topic started by: GNUser on July 03, 2026, 09:22:33 PM
-
Hi Juanito. solaar.tcz in TCL17.1 x86_64 is missing libffi7.tcz in its .dep file:
$ solaar &
$ Traceback (most recent call last):
File "/usr/local/bin/solaar", line 54, in <module>
import solaar.gtk
File "/usr/local/lib/python3.9/site-packages/solaar/gtk.py", line 31, in <module>
import solaar.cli as _cli
File "/usr/local/lib/python3.9/site-packages/solaar/cli/__init__.py", line 25, in <module>
import logitech_receiver.device as _device
File "/usr/local/lib/python3.9/site-packages/logitech_receiver/device.py", line 25, in <module>
import hidapi as _hid
File "/usr/local/lib/python3.9/site-packages/hidapi/__init__.py", line 34, in <module>
from hidapi.udev import close # noqa: F401
File "/usr/local/lib/python3.9/site-packages/hidapi/udev.py", line 37, in <module>
import gi
File "/usr/local/lib/python3.9/site-packages/gi/__init__.py", line 40, in <module>
from . import _gi
ImportError: libffi.so.7: cannot open shared object file: No such file or directory
[1]+ Done(1) solaar
$ provides.sh libffi.so.7
libffi7.tcz
solaar is a great extension for logitech devices. Thanks for putting it in the repo :)
-
Hi GNUser
solaar.tcz.dep updated. See if it works any better now,
-
Hi Rich. Works perfectly now. Thanks!
-
Hi GNUser
It sounds like something might need to be rebuilt, though
based on the chain of events in your original post, I can't
tell which extension that would be.
I say this because a bunch of the python3.9 files mentioned
in solaar.tcz.dep already depend on libffi.tcz.
-
Hi Rich. libffi.tcz contains /usr/local/lib/libffi.so.8
Back when Juanito built solaar, libffi.tcz must have contained /usr/local/lib/libffi.so.7. But somewhere along the way libffi was updated and the version that solaar was built against is now called libffi7.tcz
I agree that we may have some (newer) extensions in solaar's dependency tree now depending on libffi.so.8 while some thing(s) still need(s) libffi.so.7.
I'm not sure whether having both versions of libffi in the dependency tree is a real problem or just cosmetic. I'll do some more testing.
-
Hi GNUser
Having 2 versions of a package is typically not a problem.
It happens when a lot of extensions still depend on the
previous version. Rather than break or rebuild a whole
slew of extensions, the previous dependency gets renamed
and dependency files get updated, so everything still works.
12 other extensions still depend on libffi7:
gsasl.tcz
guile.tcz
llvm15-lib.tcz
llvm19-lib.tcz
llvm8-lib.tcz
llvm-lib.tcz
micropython.tcz
openbox.tcz
python3.6
quickjs-ffi.tcz
ruby.tcz
seamonkey.tcz
-
I did more testing. Everything's fine. I'll provide details below in case they're helpful.
I have a Logitech K400r wireless keyboard. Its Fx keys (F1-F12) default to media/web functions, so to send a plain F11 to my computer, for example, I need to press Fn + F11. There is no physical switch on the K400r keyboard to restore the old/sane behavior where the Fx keys send Fx keystrokes, but solaar has the ability to change something in the keyboard's firmware and fix this for me.
I can confirm that solaar is working fine for what I need it, even with both libffi.tcz and libffi7.tcz in the dependency tree. I can toggle the old/sane Fx key behavior on and off without any problems.