Three separate gaps around pairing failures: The discovery phase had no visible time limit, so a pairing attempt that found nothing just sat there until it gave up. Page 0 now carries a progress bar that drains over the 30 seconds Solaar itself passes to discover() and set_lock(). It stops as soon as a device is found. The passkey page deliberately gets no countdown: that timeout lives in the receiver's firmware and is never reported, so any timer shown there would be invented. The failure page ran gettext over a runtime value, which xgettext cannot extract, so no pairing error was ever actually translated. The cause now comes from literals matched exactly against the error labels that can reach the page, which also lets each one say something useful. Bolt's "failed" in particular used to land on "No further details are available about the error"; it now says the sequence was not accepted, and admits that the receiver cannot tell which buttons were pressed rather than guessing at a cause. The raw error token is kept in a small line so bug reports still carry it. Recovering from a failure meant closing the dialog and starting over from the main window, so the page now offers a "Try again" button. It is packed into the page rather than added as an assistant action widget, so the path stays usable wherever the assistant is only duck-typed, and it is only built when a retry callback was supplied. The Bolt instructions also gained the long-press hint the command line already had, and the passkey page a reminder to keep the device on and in range. The labels added to both pages are bounded and centred so that they wrap inside the existing dialog width instead of stretching it. |
||
|---|---|---|
| .github | ||
| bin | ||
| docs | ||
| lib | ||
| po | ||
| rules.d | ||
| rules.d-uinput | ||
| share | ||
| tests | ||
| tools | ||
| .coveragerc | ||
| .git-blame-ignore-revs | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .python-version | ||
| CHANGELOG.md | ||
| COPYRIGHT | ||
| LICENSE.txt | ||
| MANIFEST.in | ||
| Makefile | ||
| README.md | ||
| RELEASE.md | ||
| RHEL.md | ||
| Release_Notes.md | ||
| mkdocs.yml | ||
| pyproject.toml | ||
| release.sh | ||
| setup.py | ||
README.md
Solaar
Solaar is a Linux manager for many Logitech keyboards, mice, and other devices that connect wirelessly to a Unifying, Bolt, Lightspeed or Nano receiver as well as many Logitech devices that connect via a USB cable or Bluetooth. Solaar is not a device driver and responds only to special messages from devices that are otherwise ignored by the Linux input system.
More Information - Usage - Capabilities - Rules - Manual Installation - Known Issues
Solaar supports:
- pairing/unpairing of devices with receivers
- configuring device settings
- custom button configuration
- running rules in response to special messages from devices
For more information see the main Solaar documentation page. -
Installation Packages
Up-to-date prebuilt packages are available for some Linux distros (e.g., Fedora) in their standard repositories. If a recent version of Solaar is not available from the standard repositories for your distribution, you can try one of these packages:
- Arch solaar package in the extra repository
- Ubuntu/Kubuntu package in Solaar stable ppa
- NixOS Flake package in Svenum/Solaar-Flake
Solaar is available from some other repositories but may be several versions behind the current version:
- a Debian package, courtesy of Stephen Kitt
- a Ubuntu package is available from universe repository
- a Gentoo package, courtesy of Carlos Silva and Tim Harder
- a Mageia package, courtesy of David Geiger