https://github.com/gmemstr/osc-triggers
https://github.com/gmemstr/osc-triggers
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/gmemstr/osc-triggers
- Owner: gmemstr
- License: gpl-3.0
- Created: 2023-04-25T08:12:16.000Z (over 2 years ago)
- Default Branch: trunk
- Last Pushed: 2024-06-06T22:17:48.000Z (over 1 year ago)
- Last Synced: 2025-01-26T13:41:28.774Z (12 months ago)
- Language: Rust
- Size: 106 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# osc-triggers
[](https://builds.sr.ht/~gmem/osc-triggers?)
Easily map OSC events to keypresses.
## building
Nix is primarily used to build this applicaiton. [InputBot](https://github.com/obv-mikhail/InputBot) is used for keypresses and requires the following dependencies on Linux:
* **libx11-dev**
* **libxtst-dev**
* **libudev-dev**
* **libinput-dev**
It also requires running as root on Linux. For ✨ reasons ✨.
Without Nix, you can just build with the usual `cargo build`.
## configuration
Configuration is fairly straightforward, using TOML to make it human-friendly until a reasonable
user interface can be figured out. An optional value to match can be provided if you want to
trigger different keys for different values.
```toml
[[mapping]]
event = "/some/example"
key = "F24"
[[mapping]]
event = "/some/other/example"
key = "F23"
value = "0"
```
Events come from whatever OSC client you're using. This application is primarily targetting
VRChat but theoretically any will work.
Optionally the port the server runs on can be set.
```toml
[server]
port = 9090
```
The server will always bind to `127.0.0.1` / `localhost`.
## ci/cd & mirroring to github
Development of this primarily takes place over on [sourcehut](https://git.sr.ht/~gmem/osc-triggers). Pull requests and issues are welcome to GitHub though, and your patches will be commited
to sourcehut with proper attribution. The repository is mirrored to GitHub on push to leverage
GitHub Actions for releases. All other testing goes through sourcehut.