Solaar is available on official Debian repository and the old repo link
`https://pwr.github.io/Solaar/packages/` is dead and causes `404 Not
Found` error and `The repository 'http://pwr.github.io/Solaar/packages
./ Release' does not have a Release file.` error when doing `apt update`
so I updated the installation instructions.
Add application path from the repository to the search paths.
When you Install a project in editable mode (i.e. setuptools "develop mode")
from a local project path, the application path is ``./share``, relative to
git's top level folder. Add this path at the end of search path::
echo "$(git rev-parse --show-toplevel)/share"
Fix the "chicken or the egg" problem: while installing solaar, setup.py tries to
import solaar. This will only work if solaar already is installed before. On
first time installation a import exception is raised.::
$ pip install git+https://github.com/pwr/Solaar.git
Collecting git+https://github.com/pwr/Solaar.git
Cloning https://github.com/pwr/Solaar.git to /tmp/pip-req-build-xzyoskf5
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-req-build-xzyoskf5/setup.py", line 11, in <module>
from solaar import NAME, __version__
ModuleNotFoundError: No module named 'solaar'
Fix errors related to sleep and power on/off (especially HID++ >=2.0 devices).
Closes#414 by @SonicFrog who originally came up with a similar fix for the connection notice.
* Don't assume 0x41 messages only occur when a device is first paired
(prevents errors when waking from sleep or turning a device on)
* Delay reads/writes when a device is powered on, to prevent broken pipe
errors (hacky solution).
* Don't clear status when a device connects, preventing settings from being
cleared when a device sleeps or is turned off.
* Fix typos.
This fixes the python 3.7 incompatibilities arising from 'async'
becoming a reserved word.
The file lib/solaar/async.py is renamed to asks.py. I picked the name
because it defines the TaskRunner class and it's the best I could come
up in fifteen seconds.
The async function in solar/ui/__init__.py is renamed to ui_async, and
the various imports of that function are changed to match.
Without this patch it doesn't build at all. I am running with this
patch applied and everything appears to work as expected.
Signed-off-by: Jason Tibbitts <tibbs@math.uh.edu>