community
community copied to clipboard
GTK3 Clipboard Unavailable (looks for xsel, xclip, and dbusklipper)
Software Versions
- Python: v3.9.10
- OS: Linux
- Kivy: v2.1.0
- Kivy installation method: pip
Describe the bug Upon loading an application under GTK3 (v3.42.0), the clipboard provider returns an error stating "no valuable cutbuffer available", and does not use the GTK3 clipboard.
Expected behavior A viable clipboard is found and available using the built in GTK3 clipboard.
To Reproduce Visible by pulling hm-panelizer , and running the application. I would suppose this affects other applications, but my sample size is only 1.
Code and Logs and screenshots
[WARNING] [Config ] Older configuration version detected (0 instead of 24)
[WARNING] [Config ] Upgrading configuration in progress.
[INFO ] [Logger ] Record log in /home/rmackinnon/.kivy/logs/kivy_22-06-07_0.txt
[INFO ] [Kivy ] v2.1.0
[INFO ] [Kivy ] Installed at "/home/rmackinnon/.local/lib/python3.9/site-packages/kivy/__init__.py"
[INFO ] [Python ] v3.9.10 (main, Feb 11 2022, 17:56:34)
[GCC 11.2.0]
[INFO ] [Python ] Interpreter at "/usr/lib/python-exec/python3.9/python"
[INFO ] [Logger ] Purge log fired. Processing...
[INFO ] [Logger ] Purge finished!
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Factory ] 189 symbols loaded
[WARNING] [Factory ] Ignored class "Settings" re-declaration. Current - module: kivy.uix.settings, cls: None, baseclass: None, filename: None. Ignored - module: None, cls: None, baseclass: Popup, filename: /home/rmackinnon/Develop/hm-panelizer/panelizer.kv.
[WARNING] [Factory ] Ignored class "About" re-declaration. Current - module: None, cls: <class 'UI.About'>, baseclass: None, filename: None. Ignored - module: None, cls: None, baseclass: Popup, filename: /home/rmackinnon/Develop/hm-panelizer/panelizer.kv.
[WARNING] [Factory ] Ignored class "Error" re-declaration. Current - module: None, cls: <class 'UI.Error'>, baseclass: None, filename: None. Ignored - module: None, cls: None, baseclass: Popup, filename: ${HOME}/Develop/hm-panelizer/panelizer.kv.
[WARNING] [Factory ] Ignored class "Progress" re-declaration. Current - module: None, cls: <class 'UI.Progress'>, baseclass: None, filename: None. Ignored - module: None, cls: None, baseclass: Popup, filename: ${HOME}/Develop/hm-panelizer/panelizer.kv.
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] Backend used <sdl2>
[INFO ] [GL ] OpenGL version <b'4.6.0 NVIDIA 470.103.01'>
[INFO ] [GL ] OpenGL vendor <b'NVIDIA Corporation'>
[INFO ] [GL ] OpenGL renderer <b'Quadro K2000M/PCIe/SSE2'>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <b'4.60 NVIDIA'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Clipboard ] Provider: gtk3(['clipboard_xclip', 'clipboard_xsel', 'clipboard_dbusklipper'] ignored)
[CRITICAL] [Cutbuffer ] Unable to find any valuable Cutbuffer provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
xclip - FileNotFoundError: [Errno 2] No such file or directory: 'xclip'
File "${HOME}/.local/lib/python3.9/site-packages/kivy/core/__init__.py", line 59, in core_select_lib
mod = importlib.__import__(name='{2}.{0}.{1}'.format(
File "<frozen importlib._bootstrap>", line 1109, in __import__
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "${HOME}/.local/lib/python3.9/site-packages/kivy/core/clipboard/clipboard_xclip.py", line 17, in <module>
p = subprocess.Popen(['xclip', '-version'], stdout=subprocess.PIPE,
File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
xsel - FileNotFoundError: [Errno 2] No such file or directory: 'xsel'
File "${HOME}/.local/lib/python3.9/site-packages/kivy/core/__init__.py", line 59, in core_select_lib
mod = importlib.__import__(name='{2}.{0}.{1}'.format(
File "<frozen importlib._bootstrap>", line 1109, in __import__
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "${HOME}/.local/lib/python3.9/site-packages/kivy/core/clipboard/clipboard_xsel.py", line 16, in <module>
p = subprocess.Popen(['xsel'], stdout=subprocess.PIPE)
File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
Additional context
This issue may be related to #5804?. With Wayland mainlined for GTK3 window managers, this is a standing issue as xsel
and xclip
are no longer applicable clipboard providers. Let me know what I can do to help, would be willing to spend some cycles dev'ing a fix.