hyperb1iss / uchroma Goto Github PK
View Code? Open in Web Editor NEWAn advanced driver for Razer Chroma hardware in Linux
Home Page: https://cyanogen.github.io/uchroma/
License: GNU Lesser General Public License v3.0
An advanced driver for Razer Chroma hardware in Linux
Home Page: https://cyanogen.github.io/uchroma/
License: GNU Lesser General Public License v3.0
UChroma needs a nice GUI frontend with indicators for battery level and such.
So I tried to get this setup in a venv instead of / because its just cleaner imho.
After the dependency install (as well as fixing python3-gi as such ) I get the following error:
(.venv3) ➜ uchroma git:(master) uchroma -h
Traceback (most recent call last):
File "/home/jramapuram/.venv3/bin/uchroma", line 11, in <module>
load_entry_point('uchroma==1.0', 'console_scripts', 'uchroma')()
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/uchroma/client/client.py", line 702, in run_client
UChromaTool().run()
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/uchroma/client/cmd.py", line 45, in __init__
self._add_subparsers(sub)
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/uchroma/client/client.py", line 675, in _add_subparsers
driver = self.get_driver()
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/uchroma/client/cmd.py", line 92, in get_driver
dev_paths = self._client.get_device_paths()
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/uchroma/client/dbus_client.py", line 18, in get_device_paths
dm = self._bus.get(SERVICE)
File "/home/jramapuram/.venv3/lib/python3.6/site-packages/pydbus/proxy.py", line 47, in get
0, timeout_to_glib(timeout), None)
GLib.Error: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.chemlab.UChroma exited with status 1 (25)
The base uchroma module needs to be published to PyPi. This can be used to create third-party renderer plugins.
I have a RBS Late 2016 and sometimes the brightness is not restored after a resume from suspend.
It looks like it needs 2 suspend/resume to trigger the issue.
I noticed that the bug occurs when the light is turned off abruptly at suspend but does not occur when the light gradually fades out at suspend.
I figured out that I can workaround it if I comment this piece of code in uchroma/server/device_base.py. With the comment, the light always fades out gradually.
l. 235:
if fast: self._set_brightness(0) else: if self._device_open(): self._brightness_animator.animate(self.brightness, 0, done_cb=self._done_cb)
Sorry, I'd like to eventually make a pull request but I'm currently not confident enough in python to try something. I hope my description helps anyway.
Other than that, it's a pretty neat package.
It's the only device right now I own that gets listed (I own BlackWidow Chroma, DeathAdder Chroma & Kraken 7.1 Chroma). When I try to set the brightness with uchroma brightness 100
, nothing changes and I have the following output in my systemd journal: http://pastebin.com/cZ5Ax2zC
Current code is just a skeleton and doesn't do anything.
It should be possible to define "zones" on keyboards and independently apply custom effects.
I just use the following cmd:
sudo add-apt-repository ppa:cyanogen/uchroma
sudo apt update
sudo apt install uchroma
Then I get
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package uchroma
I don't know why.
anyone has the some question?
Third-party modules should be able to supply renderers without hassle.
Ubuntu 20.04.2 LTS
when i try build from source
$ sudo make install
python3 setup.py install --root=/
Traceback (most recent call last):
File "setup.py", line 28, in <module>
from Cython.Distutils import build_ext
ModuleNotFoundError: No module named 'Cython'
make: *** [Makefile:12: install_library] Error 1
but, already installed cython
$ pip3 install Cython
Requirement already satisfied: Cython in /home/vm/.local/lib/python3.8/site-packages (0.29.22)
$ pip3 install pycocotools
Requirement already satisfied: pycocotools in /home/vm/.local/lib/python3.8/site-packages (2.0.2)
Requirement already satisfied: matplotlib>=2.1.0 in /home/vm/.local/lib/python3.8/site-packages (from pycocotools) (3.4.1)
Requirement already satisfied: setuptools>=18.0 in /usr/lib/python3/dist-packages (from pycocotools) (45.2.0)
Requirement already satisfied: cython>=0.27.3 in /home/vm/.local/lib/python3.8/site-packages (from pycocotools) (0.29.22)
Requirement already satisfied: numpy>=1.16 in /home/vm/.local/lib/python3.8/site-packages (from matplotlib>=2.1.0->pycocotools) (1.20.2)
Requirement already satisfied: cycler>=0.10 in /home/vm/.local/lib/python3.8/site-packages (from matplotlib>=2.1.0->pycocotools) (0.10.0)
Requirement already satisfied: pillow>=6.2.0 in /usr/lib/python3/dist-packages (from matplotlib>=2.1.0->pycocotools) (7.0.0)
Requirement already satisfied: python-dateutil>=2.7 in /usr/lib/python3/dist-packages (from matplotlib>=2.1.0->pycocotools) (2.7.3)
Requirement already satisfied: kiwisolver>=1.0.1 in /home/vm/.local/lib/python3.8/site-packages (from matplotlib>=2.1.0->pycocotools) (1.3.1)
Requirement already satisfied: pyparsing>=2.2.1 in /home/vm/.local/lib/python3.8/site-packages (from matplotlib>=2.1.0->pycocotools) (2.4.7)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from cycler>=0.10->matplotlib>=2.1.0->pycocotools) (1.14.0)
whats the problem?
The Blades use a different command to control it.
We have a (horrible) generic one which is definitely wrong, and a perfect one for the Blade Pro (my daily driver). Keymaps need created for all supported devices for keyboard-driven animations to display correctly. Really need help with this as the user community grows :)
On a build failure, eg: ModuleNotFoundError: No module named 'grapefruit'
the uninstall is not clean:
➜ uchroma git:(master) sudo make uninstall
find: ‘//usr/local/lib/python3*’: No such file or directory
readlink: invalid option -- '*'
Try 'readlink --help' for more information.
install -m 644 -v -D install/org.chemlab.UChroma.service //usr/share/dbus-1/services/org.chemlab.UChroma.service
removed '//usr/share/dbus-1/services/org.chemlab.UChroma.service'
'install/org.chemlab.UChroma.service' -> '//usr/share/dbus-1/services/org.chemlab.UChroma.service'
install -m 644 -v -D install/uchromad.service //usr/lib/systemd/user/uchromad.service
removed '//usr/lib/systemd/user/uchromad.service'
'install/uchromad.service' -> '//usr/lib/systemd/user/uchromad.service'
The uchromad service is not properly uninstalled due to the first failure from above:
➜ uchroma git:(master) ls -lht /usr/lib/systemd/user
total 152K
-rw-r--r-- 1 root root 165 Mar 7 11:08 uchromad.service
Only libusb is tested currently, but we should be able to support both and many distros install the hidraw backend by default.
The gbulb
dependency is no longer maintained. To install with from the Aur, I had to edit its pkgbuild and skip tests. There are multiple failed tests and deprecation warnings about Python >3.8 incompatibility. Has replacing this dependency been considered?
OS: Manjaro
Python: 3.8.1
Need to do end-to-end testing due to many ancient libraries
Tried to install on Razer Blade Stealth (Kaby Lake) running openSUSE Tumbleweed. Could be same as #13
git clone https://github.com/cyanogen/uchroma.git
I installed dependencies manually in order to successfully run 'sudo make install':
sudo zypper in python-cffi
sudo pip install argcomplete cffi colorlog colr evdev frozendict gbulb grapefruit hidapi-cffi hsluv matplotlib numpy pydbus pyudev ruamel.yaml scikit-image scipy traitlets wrapt
sudo make install
I noticed that uchromad seem to shut down:
Mar 30 21:07:52 linux-lbe3 dbus-daemon[1482]: Activating service name='org.chemlab.UChroma'
Mar 30 21:07:53 linux-lbe3 dbus-daemon[1482]: Successfully activated service 'org.chemlab.UChroma'
Mar 30 21:07:53 linux-lbe3 org.chemlab.UChroma[1482]: uchroma.power/INFO | Connected screensaver: org.freedesktop.ScreenSaver (':1.10',)
Mar 30 21:07:53 linux-lbe3 org.chemlab.UChroma[1482]: uchroma.power/INFO | Connected to org.freedesktop.login1 (':1.3',)
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: uchroma.server/INFO | Shutting down
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: Error in atexit._run_exitfuncs:
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: Traceback (most recent call last):
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: File "/usr/lib64/python3.6/site-packages/uchroma/server/server.py", line 121, in exit
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: return_when=futures.ALL_COMPLETED))
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: File "/usr/lib/python3.6/site-packages/gbulb/glib_events.py", line 136, in run_until_complete
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: return future.result()
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: File "/usr/lib64/python3.6/asyncio/tasks.py", line 298, in wait
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: raise ValueError('Set of coroutines/Futures is empty.')
Mar 30 21:08:40 linux-lbe3 org.chemlab.UChroma[1482]: ValueError: Set of coroutines/Futures is empty.
When starting it again manually:
linux-lbe3:~> uchromad -d
uchroma.devicemanager/DEBUG | Udev monitor started
uchroma.power/INFO | Connected screensaver: org.freedesktop.ScreenSaver (':1.10',)
uchroma.power/INFO | Connected to org.freedesktop.login1 (':1.3',)
uchroma -l returns nothing:
linux-lbe3:~> uchroma -l
linux-lbe3:~>
lsusb output for reference:
Bus 001 Device 004: ID 1532:0220 Razer USA, Ltd
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x1532 Razer USA, Ltd
idProduct 0x0220
bcdDevice 2.00
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 84
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 61
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 159
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 94
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Hi cyanogen,
I'm using the Kaby Lake Razer Blade Stealth on Arch, I managed to install the AUR package but I could not start the daemon.
Here's the trace:
uchromad -d
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/uchroma/util.py", line 346, in call
return cls.__instance
AttributeError: type object 'UChromaDeviceManager' has no attribute '_Singleton__instance'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/uchromad", line 11, in
load_entry_point('uchroma==1.0.1', 'console_scripts', 'uchromad')()
File "/usr/lib/python3.6/site-packages/uchroma/server/server.py", line 110, in run_server
UChromaServer().run()
File "/usr/lib/python3.6/site-packages/uchroma/server/server.py", line 59, in run
self._run()
File "/usr/lib/python3.6/site-packages/uchroma/server/server.py", line 65, in _run
dm = UChromaDeviceManager()
File "/usr/lib/python3.6/site-packages/uchroma/util.py", line 348, in call
cls.__instance = super(Singleton, cls).call(*args, **kwargs)
File "/usr/lib/python3.6/site-packages/uchroma/server/device_manager.py", line 85, in init
self.discover()
File "/usr/lib/python3.6/site-packages/uchroma/server/device_manager.py", line 118, in discover
if self._key_for_path(parent.sys_path) is not None:
AttributeError: 'NoneType' object has no attribute 'sys_path'
Did I do something wrong ? Maybe RBS is not supported ?
Turn out the lights when the rest of the lights go out
Which can cause jank that only gets worse as devices are added, mostly due to the mandatory sleep required before reading back status after sending a command. The lower layer is using HIDAPI, which does have nonblocking IO (except for feature reports, which do not notify by design), it will need hooked up to asyncio. At least one hack is in place to handle brightness fading already, this needs to go away.
How can I help you to get the Razer Blade 15" keyboard working?
Device ID: 1532:0245 Razer USA, Ltd
Currently when I run: uchroma -l
I think it crashes. There is no output displayed.
Does this list of files that get installed with the package seem correct to you? http://pastebin.com/u4q4t9Up
uchroma -l
shows no devices on Razer blade stealth early 2020.
Would like to help if possible.
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 1532:0252 Razer USA, Ltd Razer Blade
Bus 003 Device 002: ID 13d3:56d5 IMC Networks Integrated Camera
Bus 003 Device 004: ID 8087:0026 Intel Corp. AX201 Bluetooth
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Razer Razer Blade id=11 [slave pointer (2)]
⎜ ↳ Razer Razer Blade id=12 [slave pointer (2)]
⎜ ↳ CUST0001:00 06CB:CDA3 Mouse id=13 [slave pointer (2)]
⎜ ↳ CUST0001:00 06CB:CDA3 Touchpad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Integrated Camera: Integrated C id=8 [slave keyboard (3)]
↳ Integrated Camera: Integrated I id=9 [slave keyboard (3)]
↳ Razer Razer Blade id=10 [slave keyboard (3)]
↳ Razer Razer Blade id=15 [slave keyboard (3)]
I'm having a little trouble with uchroma from AUR on Arch. I had to do some udevadm control --reload
and udevadm trigger
shenanigans before the hid devices could find their udev parent hidraw cousins. Maybe this should go in the AUR package?
Anyways, now I'm here:
[sj26@wheeljack ~]$ uchromad --debug
uchroma.driver-0/DEBUG | Loaded renderers: uchroma.fxlib.plasma.Plasma, uchroma.fxlib.rainbow.Rainbow, uchroma.fxlib.ripple.Ripple
uchroma.driver-1/DEBUG | Loaded renderers: uchroma.fxlib.plasma.Plasma, uchroma.fxlib.rainbow.Rainbow, uchroma.fxlib.ripple.Ripple
uchroma.devicemanager/DEBUG | Udev monitor started
uchroma.power/INFO | Connected screensaver: org.freedesktop.ScreenSaver (':1.41',)
uchroma.power/INFO | Connected screensaver: org.gnome.ScreenSaver (':1.16',)
uchroma.power/INFO | Connected to org.freedesktop.login1 (':1.1',)
uchroma.server/INFO | add: UChromaWirelessMouse(name=Mamba (Wireless), type=Mouse, product_id=0x0045, index=0)
uchroma.server/INFO | add: UChromaKeyboard(name=Ornata Chroma, type=Keyboard, product_id=0x021e, index=1)
Unhandled exception in async future
future: <Task finished coro=<UChromaDeviceManager._fire_callbacks() done, defined at /usr/lib/python3.6/site-packages/uchroma/server/device_manager.py:90> exception=TypeError('only integer scalar arrays can be converted to a scalar index',) created at /usr/lib/python3.6/site-packages/uchroma/util.py:278>
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/uchroma/server/device_manager.py", line 96, in _fire_callbacks
yield from callback(action, device)
File "/usr/lib/python3.6/asyncio/coroutines.py", line 210, in coro
res = func(*args, **kw)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 736, in _dm_callback
path = self._publish_device(device)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 712, in _publish_device
devapi = DeviceAPI(device, self._bus)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 113, in __init__
self.__class__.dbus = self._get_descriptor()
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 301, in _get_descriptor
if hasattr(self._driver, name):
File "/usr/lib/python3.6/site-packages/uchroma/server/mouse.py", line 183, in battery_level
value = self.run_with_result(UChromaWirelessMouse.Command.GET_BATTERY_LEVEL)
File "/usr/lib/python3.6/site-packages/uchroma/server/device_base.py", line 341, in run_with_result
result = report.result
File "/usr/lib/python3.6/site-packages/uchroma/server/report.py", line 201, in result
return bytes(self._result)
TypeError: only integer scalar arrays can be converted to a scalar index
Unhandled exception in async future
future: <Task finished coro=<UChromaDeviceManager._fire_callbacks() done, defined at /usr/lib/python3.6/site-packages/uchroma/server/device_manager.py:90> exception=TypeError('only integer scalar arrays can be converted to a scalar index',) created at /usr/lib/python3.6/site-packages/uchroma/util.py:278>
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/uchroma/server/device_manager.py", line 96, in _fire_callbacks
yield from callback(action, device)
File "/usr/lib/python3.6/asyncio/coroutines.py", line 210, in coro
res = func(*args, **kw)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 736, in _dm_callback
path = self._publish_device(device)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 712, in _publish_device
devapi = DeviceAPI(device, self._bus)
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 113, in __init__
self.__class__.dbus = self._get_descriptor()
File "/usr/lib/python3.6/site-packages/uchroma/server/dbus.py", line 301, in _get_descriptor
if hasattr(self._driver, name):
File "/usr/lib/python3.6/site-packages/uchroma/server/device_base.py", line 435, in firmware_version
version = self._get_firmware_version()
File "/usr/lib/python3.6/site-packages/uchroma/server/device_base.py", line 426, in _get_firmware_version
return self.run_with_result(BaseUChromaDevice.Command.GET_FIRMWARE_VERSION)
File "/usr/lib/python3.6/site-packages/uchroma/server/device_base.py", line 341, in run_with_result
result = report.result
File "/usr/lib/python3.6/site-packages/uchroma/server/report.py", line 201, in result
return bytes(self._result)
TypeError: only integer scalar arrays can be converted to a scalar index
Kinda looks like the Ornata and Mamba might be doing something unexpected?
The server keeps running, but the client doesn't seem to see anything:
[sj26@wheeljack ~]$ uchroma
usage: uchroma [-v] [-g] [-d DEVICE] [-l] {} ...
uchroma: error: Multiple devices found, select one with --device
[sj26@wheeljack ~]$ uchroma -v
uchroma-1.0
[sj26@wheeljack ~]$ uchroma -l
[sj26@wheeljack ~]$ uchroma -d 0
usage: uchroma [-v] [-g] [-d DEVICE] [-l] {} ...
uchroma: error: Invalid device: 0
[sj26@wheeljack ~]$ uchroma -d 1
usage: uchroma [-v] [-g] [-d DEVICE] [-l] {} ...
uchroma: error: Invalid device: 1
Need man pages, such fun!
Add a connector to Colourlovers which can populate color presets
Finish high-level documentation before release, including renderer docs
Is there a chance to make this so that it coexists with openrazer and allows for persistent makros ?
Hello thank you for this project,
I want to install this project from aur but get this error :) what we should do ?
error: failed to commit transaction (conflicting files)
python-wrapt: /usr/lib/python3.6/site-packages/wrapt-1.10.10-py3.6.egg-info exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__init__.py exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__pycache__/__init__.cpython-36.pyc exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__pycache__/arguments.cpython-36.pyc exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__pycache__/decorators.cpython-36.pyc exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__pycache__/importer.cpython-36.pyc exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/__pycache__/wrappers.cpython-36.pyc exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/_wrappers.cpython-36m-x86_64-linux-gnu.so exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/arguments.py exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/decorators.py exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/importer.py exists in filesystem
python-wrapt: /usr/lib/python3.6/site-packages/wrapt/wrappers.py exists in filesystem
Errors occurred, no packages were upgraded.
Total carnage on 3.6, need to fix.
I am unsure how this is done, delete this if it is done incorrectly.
I cloned the repo and ran sudo make install
python3 setup.py install --root=/
running install
running build
running build_py
running egg_info
writing uchroma.egg-info/PKG-INFO
writing dependency_links to uchroma.egg-info/dependency_links.txt
writing entry points to uchroma.egg-info/entry_points.txt
writing requirements to uchroma.egg-info/requires.txt
writing top-level names to uchroma.egg-info/top_level.txt
reading manifest file 'uchroma.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'uchroma.egg-info/SOURCES.txt'
running build_ext
running install_lib
running install_egg_info
removing '/usr/lib/python3.6/site-packages/uchroma-1.0.1-py3.6.egg-info' (and everything under it)
Copying uchroma.egg-info to /usr/lib/python3.6/site-packages/uchroma-1.0.1-py3.6.egg-info
running install_scripts
Installing uchroma script to /usr/bin
Installing uchromad script to /usr/bin
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'platform'
warnings.warn(msg)
python3 setup.py build_ext --inplace
running build_ext
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'platform'
warnings.warn(msg)
install -m 644 -v -D install/70-uchroma.rules //etc/udev/rules.d/70-uchroma.rules
removed '//etc/udev/rules.d/70-uchroma.rules'
'install/70-uchroma.rules' -> '//etc/udev/rules.d/70-uchroma.rules'
python3 setup.py -q hwdb > /tmp/tmp.Yxjs0l1Moo
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'platform'
warnings.warn(msg)
Traceback (most recent call last):
File "/usr/lib/python3.6/pydoc.py", line 343, in safeimport
module = __import__(path)
File "/home/piper/Cloud/Documents/Config/bin/uchroma/uchroma/server/__init__.py", line 1, in <module>
from .device import UChromaDevice
File "/home/piper/Cloud/Documents/Config/bin/uchroma/uchroma/server/device.py", line 1, in <module>
import hidapi
ModuleNotFoundError: No module named 'hidapi'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "setup.py", line 95, in <module>
'Topic :: System :: Hardware :: Hardware Drivers'
File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "setup.py", line 51, in run
print(HWDBGenerator.generate())
File "setup.py", line 37, in generate
hw = locate('uchroma.server.Hardware')
File "/usr/lib/python3.6/pydoc.py", line 1581, in locate
nextmodule = safeimport('.'.join(parts[:n+1]), forceload)
File "/usr/lib/python3.6/pydoc.py", line 358, in safeimport
raise ErrorDuringImport(path, sys.exc_info())
pydoc.ErrorDuringImport: problem in uchroma.server - ModuleNotFoundError: No module named 'hidapi'
make: *** [Makefile:20: install_udev] Error 1
Add a simple renderer implementation that exposes a simple D-Bus interface
Can't configure uchroma to list keyboard configuration. product_id: 0x0204 (according to lsusb), but i dont know other values such as dimenstion etc.
Most of the code is there, but it's not properly passed from the commandline client.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.