Исходный репозиторий больше не развивается, программа не работает: $ ds4drv --hidraw Traceback (most recent call last): File "/usr/bin/ds4drv", line 33, in <module> sys.exit(load_entry_point('ds4drv==0.5.1', 'console_scripts', 'ds4drv')()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 177, in main thread = create_controller_thread(index + 1, controller_options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 126, in create_controller_thread controller = DS4Controller(index, controller_options, dynamic=dynamic) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 36, in __init__ self.load_options(self.options) File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 94, in load_options self.fire_event("load-options", options) File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 39, in fire_event self.loop.fire_event(event, *args) File "/usr/lib/python3/site-packages/ds4drv/eventloop.py", line 90, in fire_event self.process_events() File "/usr/lib/python3/site-packages/ds4drv/eventloop.py", line 96, in process_events callback(*args) File "/usr/lib/python3/site-packages/ds4drv/actions/input.py", line 84, in load_options joystick.device.device.fn) ^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'InputDevice' object has no attribute 'fn'. Did you mean: 'fd'? Может, имеет смысл обновить из форка: https://github.com/TheDrHax/ds4drv-cemuhook ?
ds4drv-0.5.1-alt4.git4fb4fa5 -> sisyphus: Sun Oct 11 2026 Nazarov Denis <nenderus@altlinux> 0.5.1-alt4.git4fb4fa5 - Update to git 4fb4fa5 - Fix run with python-evdev 2.0 (ALT #54473)
Стало намного лучше: $ ds4drv --hidraw [info][controller 1] Created devices /dev/input/js0 (joystick) /dev/input/event19 (evdev) Traceback (most recent call last): File "/usr/bin/ds4drv", line 33, in <module> sys.exit(load_entry_point('ds4drv==0.5.1', 'console_scripts', 'ds4drv')()) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3/site-packages/ds4drv/__main__.py", line 180, in main for device in backend.devices: ^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/backends/hidraw.py", line 172, in devices yield cls(name=device_name, ~~~^^^^^^^^^^^^^^^^^^ addr=device_addr, ^^^^^^^^^^^^^^^^^ type=cls.__type__, ^^^^^^^^^^^^^^^^^^ hidraw_device=hidraw_device.device_node, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/backends/hidraw.py", line 34, in __init__ super(HidrawDS4Device, self).__init__(name, addr, type) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/device.py", line 84, in __init__ self.set_operational() ~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3/site-packages/ds4drv/backends/hidraw.py", line 98, in set_operational addr = self.read_feature_report(0x81, 6)[1:] ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^ File "/usr/lib/python3/site-packages/ds4drv/backends/hidraw.py", line 63, in read_feature_report return fcntl.ioctl(self.fd, op, bytes(buf)) ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ BrokenPipeError: [Errno 32] Broken pipe event_device=event_device) ^^^^^^^^^^^^^^^^^^^^^^^^^^ (Это был сарказм)
*** Bug 57424 has been marked as a duplicate of this bug. ***