OpenInterpreter / 01

The open-source language model computer
http://openinterpreter.com/01
GNU Affero General Public License v3.0
4.76k stars 470 forks source link

Ubuntu 21+ is not supported [wayland] #219

Open Notnaton opened 3 months ago

Notnaton commented 3 months ago

Some dependencies uses x11 and is not compatible with wayland https://github.com/Kalmat/PyWinCtl?tab=readme-ov-file#linux-notice https://github.com/asweigart/pyautogui/issues?q=is%3Aissue+is%3Aopen+wayland

rbrisita commented 3 months ago

Adding context here:

In my experience the closest successful installs were are on distros that have X11, systemd, and the apt package manager (because of portaudio19-dev availability).

I recommend a combination of pyenv and poetry to manage versioning and environment in Python. The versions of Python should build cleanly meaning that depending on distro you might have to add libraries to satisfy its dependencies.

mysticaltech commented 3 months ago

@rbrisita @Notnaton I'm now on Xorg, and the exact same error is happening, so this has nothing to do with Wayland.

mysticaltech commented 3 months ago

On my end, got it to run via cloning the repo and using that. Using Fedora with Xorg windowing system. It's not the mac experience yet, but have hope that it will get there sometime soon.

mysticaltech commented 3 months ago

@Notnaton Took a look at your PR. For the AttributeError: module 'Xlib.X' has no attribute 'FamilyServerInterpreted' error, you need to enter poetry shell, and install that version of python-xlib pip install python-xlib==0.31. It should resolve that particular issue.

andrewfr commented 2 months ago

@mysticaltech @Notnaton I am new to 01 Light. I am using Ubuntu 22.04. When I do the following "poetry run 01 then try to record by Holding down the space bar, nothing happens. This is because the pynput library does not work with Wayland. A friend and I tested small pynput scripts. Didn't work with Wayland. Worked with X.org

pynput is used in software/source/client/base_device.py

This is a reference to Wayland/pynput

https://www.reddit.com/r/learnpython/comments/1bup4vb/pynput_doesnt_work_on_wayland/

https://pynput.readthedocs.io/en/latest/limitations.html#linux