467 Commits

Author SHA1 Message Date
Peter F. Patel-Schneider
97311bed5f ui: handle missing receiver_path more gracefully 2026-01-08 12:38:14 -05:00
Peter F. Patel-Schneider
93e90f4894 docs: update pairing documentation 2025-12-10 14:03:44 -05:00
Morton Fox
ff67790f18 docs: Remove unnecessary 'is' 2025-11-27 20:54:51 -05:00
Din Tort
f12632b45e docs: Fix typo in installation instructions for pip/pipx 2025-11-15 15:46:03 -05:00
Nils Bergmann
7963215fa2 docs: swap commands
The commands were probably meant to be the other way around. 

And I also think there is something missing in the sentence "and then run
`pip install --user solaar` or `pipx install --system-site-packages solaar` or
If you are using pipx add the `` flag.", but I was not sure.
2025-11-15 14:06:02 -05:00
Peter F. Patel-Schneider
cff0110f81 settings: add scroll ratchet force setting 2025-11-04 03:25:12 +09:00
Peter F. Patel-Schneider
b96d0bbe0b rules: fix debug messages for MouseClick rule 2025-11-02 21:01:33 +09:00
Din Tort
e906b83103 MacOS: app wrapper and launch agent scripts #1244 (#3008)
* Add scripts to create macOS app bundle and LaunchAgent #1244

This change introduces two new helper scripts for macOS users to improve integration with the operating system.

The `create-macos-app.sh` script builds a minimal `.app` wrapper for Solaar. This allows Solaar to be treated as a standard macOS application, enabling it to request necessary permissions, such as input monitoring, and to be discoverable by the OS. The script generates the required directory structure, a wrapper executable to launch Solaar, a standard `Info.plist` file, and an application icon from the source PNG.

The `create-macos-launchagent.sh` script sets up a LaunchAgent to automatically start Solaar at login and keep it running in the background. This ensures that the Solaar process is always available for device management without requiring manual intervention from the user. The script also configures log file locations for standard output and error streams.

Together, these scripts provide a more native and user-friendly experience for Solaar on macOS.

https://github.com/pwr-Solaar/Solaar/issues/1244

* Fix icon in script to create macOS app bundle #1244

https://github.com/pwr-Solaar/Solaar/issues/1244

* build: Remove hardcoded Homebrew path for solaar in macOS script

The `create-macos-app.sh` script previously defaulted to a hardcoded Homebrew path for the `solaar` executable. This change removes the specific path, defaulting instead to `solaar`.

This modification makes the script more flexible and robust. It allows the system's `PATH` to resolve the location of the `solaar` binary, accommodating various installation methods beyond a fixed Homebrew directory. The explicit check for the executable's existence is also removed, as the script will now rely on the command being available in the shell's environment, which is a more standard approach.

* refactor(macos): Improve solaar executable lookup in launchagent script

This change improves how the `create-macos-launchagent.sh` script locates the `solaar` executable.

Previously, the script defaulted to a hardcoded path (`/opt/homebrew/bin/solaar`) and would exit with an error if that specific file was not found and executable. This was too restrictive and failed in environments where `solaar` is installed in a different location, such as through `pipx` or in standard system paths like `/usr/local/bin`.

Now, the script defaults the `SOLAAR_PATH` to just `solaar` and uses the `command -v` utility to find the executable in the user's `PATH`. This allows the system to resolve the correct location of the `solaar` binary automatically. If the executable cannot be found in the `PATH`, the script now issues a warning instead of exiting, and proceeds to use the provided `SOLAAR_PATH` value in the generated LaunchAgent plist. This makes the script more flexible and robust for different installation methods.

* refactor(macos): Improve solaar executable lookup in launchagent script

This change improves how the `create-macos-launchagent.sh` script locates the `solaar` executable.

Previously, the script defaulted to a hardcoded path (`/opt/homebrew/bin/solaar`) and would exit with an error if that specific file was not found and executable. This was too restrictive and failed in environments where `solaar` is installed in a different location, such as through `pipx` or in standard system paths like `/usr/local/bin`.

Now, the script defaults the `SOLAAR_PATH` to just `solaar` and uses the `command -v` utility to find the executable in the user's `PATH`. This allows the system to resolve the correct location of the `solaar` binary automatically. If the executable cannot be found in the `PATH`, the script now issues a warning instead of exiting, and proceeds to use the provided `SOLAAR_PATH` value in the generated LaunchAgent plist. This makes the script more flexible and robust for different installation methods.

* refactor: Improve Solaar path resolution in macOS helper scripts

This change improves the robustness of the macOS helper scripts by ensuring the Solaar executable is found before proceeding.

Previously, `create-macos-launchagent.sh` would only issue a warning and continue with a potentially invalid path if the `solaar` command was not found. `create-macos-app.sh` had a typo (`SOLAR_PATH`) and lacked a check altogether.

Now, both scripts (`create-macos-app.sh` and `create-macos-launchagent.sh`) will:
- Correctly check if the `solaar` executable exists in the system's `PATH`.
- Use the resolved, absolute path to the executable to avoid ambiguity.
- Exit with an error if the executable cannot be found, preventing the creation of a broken app bundle or launch agent.

* feat(macos): Relaunch app to fix tray icon and add Dock icon

This change modifies the macOS app bundle creation script to improve the application's behavior and user experience on macOS.

Previously, when Solaar was launched as a standard `.app` bundle, macOS restrictions sometimes prevented the GTK tray icon from appearing correctly. This change introduces a workaround in the wrapper script. The application now relaunches itself as a detached background process on the first launch. This new, detached process is no longer subject to the same `.app` bundle restrictions, allowing the tray icon to be created reliably.

Additionally, the `LSUIElement` key in the `Info.plist` is set to `false`. This makes Solaar a regular application with an icon in the Dock, which is the standard behavior expected by most macOS users for a graphical application.

* docs: Explain macOS Python.app Dock icon limitation

This change adds a comment to the `create-macos-app.sh` script to explain why the Solaar application may still show a Dock icon on macOS, even when it is not desired for a background utility.

On macOS, Python often runs as `Python.app`, which has its own `Info.plist` file. This built-in `Info.plist` takes precedence over the one generated for the Solaar app bundle. As a result, settings like `LSUIElement=true`, which would normally hide the Dock icon, are overridden. This comment clarifies that this behavior is a known limitation of the Python distribution on macOS and not a bug in the Solaar packaging script.

* docs: Add instructions for creating macOS launcher options

This update enhances the installation guide by including steps to set up macOS launchers for Solaar. Two options are provided:
- LaunchAgent for automatic background execution and crash recovery.
- App launcher for manual addition to Login Items.
2025-10-30 07:20:55 -04:00
Peter F. Patel-Schneider
2cb5fa4b97 settings: ignore hidden features 2025-10-27 15:27:13 -04:00
Peter F. Patel-Schneider
e2a9206d78 docs: update files shown in documentation 2025-10-23 09:28:52 -04:00
Peter F. Patel-Schneider
e6ecf94deb docs: make known issues more prominent 2025-10-23 08:16:05 -04:00
NaviMen
632d4dd5a0 Update i18n.md
- Ukrainian: Олександр Афанасьєв
2025-10-17 19:40:48 -04:00
Peter F. Patel-Schneider
0335dd003c release 1.1.15rc2 2025-10-10 09:19:31 -04:00
Peter F. Patel-Schneider
94f4c3230b rules: Device and Action rule conditions match on codename and name 2025-09-30 10:23:50 -04:00
Peter F. Patel-Schneider
694caf635e docs: give uninstallation file correct name 2025-09-08 13:28:39 -04:00
Peter F. Patel-Schneider
abc5a31c15 install: fix bug in apt install target 2025-09-08 09:55:21 -04:00
Peter F. Patel-Schneider
1a9725f540 doc: update status of hid_parser 2025-05-21 11:52:31 -04:00
mattdale77
c7a54cf7ec Update installation.md
Fix link to the desktop file
2025-05-21 11:51:50 -04:00
Ágata Leuck
33a06ac834 docs: add G604 mouse details 2025-04-13 20:29:39 -04:00
Rolf Leggewie
f0ad2692b8 Update index.md
improve the wording describing the limitations set by the differences between the devices
2025-03-30 20:50:23 -04:00
Rolf Leggewie
d033a3c8fc Update index.md - add missing word 2025-03-30 20:50:23 -04:00
ml-
ebf8493e72 docs: add information for MX Anywhere 3 for Business 2025-03-29 09:24:07 -04:00
Peter F. Patel-Schneider
7a5a67c394 docs: improve documentation on onboard profiles 2025-03-29 09:22:59 -04:00
Matija Kljajić
7b28423572 docs(i18n): mention Serbian translation 2025-03-21 12:20:00 -04:00
Purvi Das
637e562699 Adding uninstallation docs 2025-02-22 15:31:05 -05:00
Peter F. Patel-Schneider
b9557a46b6 docs: mention typing dependency 2025-01-02 15:05:12 -05:00
Nick
2157fdb59c po: Add translator to list (#2687)
* Add translator to list

* Update i18n.md

---------

Co-authored-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
2024-11-29 16:42:07 -05:00
John Erling Blad
8518604155 i18n: Updated Norwegian Nynorsk (nn) (#2655)
Co-authored-by: John Erling Blad <jeblad@google.com>
2024-10-31 05:27:09 -04:00
Peter F. Patel-Schneider
ae39ac46ba docs: improve documentation for cli actions 2024-08-23 20:03:54 -04:00
MattHag
af12f8df52 Remove incomplete developer docs
Auto generated code documentation is incomplete, remove it.

Related #2503
2024-08-23 18:44:52 -04:00
Peter F. Patel-Schneider
64a9aac0d5 docs: add information about Onboard Profiles overriding some settings 2024-08-10 10:42:28 -04:00
Peter F. Patel-Schneider
71d2a50cb4 docs: fix broken links to Solaar logo 2024-07-02 07:57:00 -04:00
MattHag
59b30706b8 docs: Use mkdocs for public documentation (#2527)
* Add mkdocs config

Build and debug docs locally:
mkdocs serve

* Add mkdocs config

* Introduce GitHub action for mkdocs

* Delete outdated doc files

* Generate Python documentation

* Clean up docs

- Remove ToDos from public docs
2024-07-01 08:03:50 -04:00
Peter F. Patel-Schneider
089b85676f docs: update built-in rules 2024-06-01 11:59:57 -04:00
MattHag
cece723ea4 docs: Improve rules documentation
- Page heading
- Fix heading levels
- Improve some names
2024-05-27 12:50:42 -04:00
MattHag
faf27ca323 docs: Add headings to structure rules.md
Allow users to find relevant information without reading a
long wall of text.
2024-05-27 09:55:41 -04:00
MattHag
9882d99125 docs: Add high-level graph of components
Gives an overview of the main components of Solaar and
their connections.
2024-05-16 15:59:41 -04:00
MattHag
f15a50b4b2 docs: Move screenshots into dedicated folder
Clean up docs folder.
2024-05-16 15:55:44 -04:00
Peter F. Patel-Schneider
f30999a96a release 1.1.13rc1 2024-05-08 14:37:55 -04:00
Peter F. Patel-Schneider
cf038fd982 settings: improve label and description for LED zone settings 2024-04-19 16:05:29 -04:00
Peter F. Patel-Schneider
08c748c593 release 1.1.12rc1 2024-04-19 03:54:54 -04:00
Peter F. Patel-Schneider
e667d41c7b solaar: use bluez dbus signals to disconnect and connect bluetooth devices 2024-04-18 20:32:40 -04:00
Peter F. Patel-Schneider
157a2601d9 doc: add information about bad interaction between Bluez 5.73 and Solaar 2024-04-10 10:55:40 -04:00
Peter F. Patel-Schneider
f38fbcf949 settings: provide symbolic names for per-key lighting keys 2024-03-27 11:15:15 -04:00
Ferdina Kusumah
84524bec3e Add new end line 2024-03-14 12:44:36 -04:00
Ferdina Kusumah
a02b1065ac Add indonesian translations 2024-03-14 12:44:36 -04:00
Peter F. Patel-Schneider
97ddee1929 docs: document battery-icons=solaar option 2024-03-13 08:50:28 -04:00
Peter F. Patel-Schneider
c23c6b7124 docs: update EX100 information 2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
a90a367609 docs: add requirement for CONFIG_HIDRAW 2024-03-07 16:32:41 -05:00
Matthias Hagmann
5edf5e7419 Simplify name of license file
Related #2273
2024-03-02 18:15:56 -05:00