diff --git a/README.md b/README.md index b5ff398..0b9058b 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,33 @@ -# Py-libbpf +pylibbpf

- - + + + + + Downloads + + Build Status + + License

-This library provides Python bindings for libbpf on Linux to make loading of eBPF object files easier. This is meant to -be used along with `pythonbpf`, the eBPF Python DSL compiler. This library makes it possible to attach these programs to -events in the kernel right from inside Python. -# IN DEVELOPMENT. DO NOT USE. +This library provides Python bindings for **libbpf** on Linux, making it easier to load eBPF object files. It is designed to be used together with [PythonBPF](https://github.com/pythonbpf/python-bpf), the eBPF compiler for Python. With these bindings, you can attach eBPF programs to kernel events directly from Python. +All programs written with this are to be run with a `sudo` Python interpreter. -## Prerequisites +> **Note**: This project is under active development and not ready for production use. + +## Dependencies * A compiler with C++11 support * Pip 10+ or CMake >= 4.1 * Ninja or Pip 10+ - ## Installation +`pip install pylibbpf` -Just clone this repository and pip install. Note the `--recursive` option which is +## Development + +Clone this repository and pip install. Note the `--recursive` option which is needed for the pybind11 submodule: ```bash @@ -30,11 +39,5 @@ pip install . With the `setup.py` file included in this example, the `pip install` command will invoke CMake and build the pybind11 module as specified in `CMakeLists.txt`. -## Development -Do this before running to make sure Python can manipulate bpf programs without sudo -```bash -sudo setcap cap_bpf,cap_sys_admin+ep /usr/bin/python3.12 -``` - ## Building the documentation The documentation here is still boilerplate.