{"repo":"lac-dcc/honey-potion","free":true,"listed":false,"github":"https://github.com/lac-dcc/honey-potion","clone":"git clone https://github.com/lac-dcc/honey-potion.git","description":"Writing eBPF programs with Elixir!","language":"C","stars":294,"topics":["elixir","ebpf","libbpf","compiler","compiler-construction","compiler-design","compilers","elixir-lang","elixir-library","framework"],"license":"GPL-3.0","category":"analytics","readme_excerpt":"🍯 Honey Potion - Writing eBPF with Elixir 🍯 🐝 About Honey Potion is a framework that brings the power of eBPF to Elixir, allowing users to write Elixir code that is transformed into eBPF bytecode. In this alpha version, Honey Potion translates Elixir code into a subset of C that leverages libbpf. The generated C code is then compiled using clang to produce the eBPF bytecode, which can be loaded into the kernel. --- 📦 Dependencies Honey Potion requires the following dependencies, listed with their Ubuntu package names (equivalents exist for other distributions): - Erlang & Elixir – Required for running Honey Potion - libbpf – Version 1.1 (installation guide) - gcc-multilib – Required for certain C libraries ( asm/types.h ) - make – For Makefile-based compilation - llvm – Provides llc - clang – Required for compilation - bpftool – Used for skeleton generation ℹ️ Note: You can manually compile clang , llc , and bpftool , as long as they are available in your $PATH . --- 🎥 Video Guide Prefer a video tutorial? Check out the Honey Potion YouTube playlist with step-by-step guides. --- 🚀 Installation Add honey to your project's dependencies in mix.exs : --- 📝 Usage When you use Honey in your module, it will be translated to C the next time you compile your project. This generates the following directories: - src/ – Stores the generated C code (e.g., Minimal.bpf.c ) - obj/ – Stores compilation objects (e.g., Minimal.o ) - bin/ – Stores the final executable (e.g., Minimal ) To r","default_branch":null,"files":null,"tree":[],"storefront":"/r/lac-dcc","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lac-dcc/honey-potion/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}