udev-hid-bpf ============ An automatic HID-BPF loader based on udev events. This repository aims to provide a simple way for users to write a HID-BPF program that fixes their device. Note that the udev-hid-bpf repository contains there distinct components: - ``udev-hid-bpf`` the binary that loads HID-BPF programs - A set of HID-BPF programs (see the ``src/bpf`` directory) - Scaffolding to automate loading of HID-BPF programs via udev. See :ref:`how_it_works` for details on how everything fits together. This project is written in Rust but knowledge of Rust should not be required, it is only used for scaffolding. Users intending to write a HID-BPF program do not need to edit the Rust code and the resulting BPF programs have no Rust dependencies. The BPF programs themselves are in C. Project home page ----------------- ``udev-hid-bpf`` is hosted on https://gitlab.freedesktop.org/libevdev/udev-hid-bpf/ To file an issue please go to `our issue tracker `_. License ------- ``udev-hid-bpf`` is licensed under the `GPL-2.0-only `_ license. .. toctree:: :maxdepth: 2 :caption: Contents: how-it-works installing-from-ci getting-started tutorial filename-conventions stable-testing-userhacks device-matches metadata udev-properties report-descriptor-macros other-resources