CATEGORY
Operating systems::Linux APIs 570 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
android-propertiesRust-based Android properties wrapper16,582,279MIT
landlockLandlock LSM helpers12,964,658MIT OR Apache-2.0
ashpdXDG portals wrapper in Rust using zbus11,504,565MIT
perf-event-open-sysUnsafe, direct bindings for Linux's perf_event_open system call, with associated
types and constants.8,817,564MIT OR Apache-2.0
gpiocdev-uapiA low level library to access GPIO lines on Linux using the GPIO character device7,471,477Apache-2.0 OR MIT
gpiocdevAccess GPIO lines on Linux using the GPIO character device7,471,301Apache-2.0 OR MIT
drm-fourccProvides an enum with every valid Direct Rendering Manager (DRM) format fourcc7,022,757MIT
perf-eventA Rust interface to Linux performance monitoring5,712,231MIT OR Apache-2.0
gpiocdev-embedded-halembedded-hal wrappers around gpiocdev Requests4,182,691Apache-2.0 OR MIT
sydrock-solid application kernel3,715,145GPL-3.0-only
selinux-sysFlexible Mandatory Access Control (MAC) for Linux3,510,549MIT
selinuxFlexible Mandatory Access Control for Linux3,442,319MIT
bluerBlueR: official Rust interface to the Linux Bluetooth protocol stack (BlueZ)2,751,172BSD-2-Clause
pathosA natural API for handling OS-specific user or system directories, including iOS and Android.1,790,625Apache-2.0 OR MIT
sevLibrary for AMD SEV1,627,902Apache-2.0
capctlA pure-Rust interface to prctl() and Linux capabilities.1,211,092MIT
bluez-asyncAn async wrapper around the D-Bus interface of BlueZ (the Linux Bluetooth daemon), supporting GATT client (central) functionality.1,203,749MIT OR Apache-2.0
bluez-generatedGenerated async D-Bus bindings for talking to BlueZ on Linux.1,162,216MIT OR Apache-2.0
oo7James Bond went on a new mission and this time as a Secret Service provider1,154,433MIT
clone3Rust bindings to the clone3 linux system call1,067,485MIT
devicemapperA library for using Linux device mapper865,236MPL-2.0
loopdev-3Setup and control loop devices662,644MIT
linux-futexFutex: A Linux-specific fast user-space locking primitive660,233BSD-2-Clause
fuse-backend-rsA rust library for Fuse(filesystem in userspace) servers and virtio-fs devices636,431Apache-2.0 AND BSD-3-Clause
devicemapper-sysLow level bindings for devicemapper500,460MPL-2.0
libcryptsetup-rsHigh level Rust bindings for libcryptsetup466,946MPL-2.0
libcryptsetup-rs-sysLow level bindings for libcryptsetup455,233MPL-2.0
bpf-linkerBPF static linker434,482MIT OR Apache-2.0
proc_sys_parserThis crate provides routines for parsing linux /proc files into Rust structs. There are multiple other crates doing this, but…346,923Apache-2.0
gpiod-coreLinux GPIO character device interfacing337,904MIT
zeroconfcross-platform library that wraps ZeroConf/mDNS implementations like Bonjour or Avahi314,114non-standard
libblkid-rsHigh level bindings for libblkid287,523MPL-2.0
elfcoreelfcore is a crate to create ELF core dumps for processes on Linux.282,189MIT
zeroconf-macrosMacros for zeroconf crate281,389non-standard
libblkid-rs-sysLow level bindings for libblkid280,667MPL-2.0
pandora_boxSyd's log inspector & profile writer270,154GPL-3.0
mmarinusA safe mmap implementation266,374Apache-2.0
avahi-sysBindings to Avahi, a library for zero-configuration networking.241,210non-standard
sgxLibrary for Intel SGX232,343Apache-2.0
eventheaderRust API for eventheader-encoded Linux Tracepoints via user_events223,888MIT
eventheader_dynamicRust API for runtime-specified eventheader-encoded Linux Tracepoints via user_events220,148MIT
perf-event-open-sys2Unsafe, direct bindings for Linux's perf_event_open system call, with associated
types and constants.219,949MIT OR Apache-2.0
syscall-numbersSystem calls numbers for various architectures217,233MIT
perf-event-dataTypes and traits for parsing records emitted by perf_event_open211,071MIT OR Apache-2.0
vdsoResolve Linux vDSO symbols207,516Apache-2.0
tracepointRust API for Linux Tracepoints via user_events205,363MIT
libsydRust-based C library for syd interaction via /dev/syd194,618LGPL-3.0
gpiodLinux GPIO character device interfacing181,498MIT
libsydtimeRust-based C LD_PRELOAD library to replace vDSO time calls with syscalls170,318LGPL-3.0
tokio-gpiodLinux GPIO character device interfacing with tokio169,267MIT
eventheader_typesRust types for eventheader-encoded Linux Tracepoints via user_events156,402MIT
perf-event2A Rust interface to Linux performance monitoring106,671MIT OR Apache-2.0
blightA hassle-free CLI backlight utility/library for Linux.104,102MIT
dma-heapLinux DMA-Buf Heap Abstraction Library103,974non-standard
nmstateLibrary for networking management in a declarative manner90,675Apache-2.0
xdpiloneInteraction with Linux XDP sockets and rings. No libbpf/libxpd-sys. Lightweight, high-performance.89,718EUPL-1.2
sd-listen-fdsMinimal, pure-rust helper to accept file descriptors from systemd89,123MIT OR Apache-2.0
fuse-abiFUSE device bindings.86,142MIT OR Apache-2.0
printersGet printers and print files on unix and windows76,425MIT
libgpiodlibgpiod wrappers76,244Apache-2.0 OR BSD-3-Clause
monitordmonitord ... know how happy your systemd is! 😊74,991GPL-2.0-or-later
openat2A simple wrapper around Linux 5.6+'s openat2() system call74,545MIT
libgpiod-syslibgpiod public header bindings74,400Apache-2.0 OR BSD-3-Clause
watchdog-deviceLinux Watchdog API implementation.68,845MIT
preempt-rtA lightweight Rust library for using the kernel's PREEMPT_RT scheduling functionality63,728MIT
linux-errnoLinux error numbers63,6880BSD
apertureGTK Widget for cameras using gstreamer and pipewire57,868GPL-3.0-or-later
usb-gadgetExpose standard or fully custom USB peripherals (gadgets) through a USB device controller (UDC) on Linux.56,534Apache-2.0
netforgeHigh-performance raw packet I/O engine with AF_XDP, sendmmsg, and pnet backends50,489MIT OR Apache-2.0
linux-syscallLinux syscall macros49,5210BSD
drivesLibrary listing mounted or mountable drives on linux40,536MIT OR Apache-2.0
udisks2Unofficial crate for interacting with the UDisks2 API38,188LGPL-2.1
xdpAF_XDP socket support without C dependencies37,564Apache-2.0 OR MIT
snphostAdministrative utility for AMD SEV-SNP36,957Apache-2.0
ddc-enhanced-rsDDC/CI high level library for Rust (cross platform)35,284MIT
sensors-sysHardware monitoring in Linux34,252MIT
ioprioA Linux-only crate for managing I/O priorities33,354MIT
one_collectCross-platform library for capturing machine-level traces.33,040MIT
acpid_plugListen to AC adapter plug events from acpid32,432MPL-2.0
bluebusA Rust library for interacting with Bluetooth devices using the org.bluez D-Bus API.31,839MIT OR Apache-2.0
poggersmemory lib31,032GPL-2.0
lazybarA lightweight, event-driven X11 status bar29,519MIT
xrandrSafe rust bindings to (some parts of) xrandr28,382MIT
netlink_wiA library to retrieve information about wireless hardware
in Linux operating system using netlink protocol.27,790MIT
tfcThe Fat Controller. A library for simulating mouse and keyboard events.27,384MIT OR Apache-2.0
alienwareAPI to control the lights on an Alienware Alpha R1/R227,184Apache-2.0
extrasafeMake your code extrasafe by reducing what it can access.26,916MIT
libscmpA safe, sane Rust interface to libseccomp on Linux.24,335MIT
lm-sensorsHardware monitoring in Linux24,014MIT
xdgkitA command line kit for XDG specs. As well as a Rust library23,984non-standard
zwp-virtual-keyboardDEPRECATED: (Unsafe) Rust code generated with wayland-scanner crate for virtual_keyboard_unstable_v1 protocol23,918MIT
linuxvideoV4L2 video capture and output library23,6490BSD
blezRenamed to bluer23,397BSD-2-Clause
libscap-bindingsBindings for Falco's `libscap` eBPF monitoring backend C library22,911Apache-2.0
hinawa-sysFFI bindings for hinawa library22,261MIT
paketkollCheck installed distro files for changes21,189MPL-2.0
hinawaAPI bindings for hinawa library21,043MIT
libmemAdvanced Game Hacking Library (Windows/Linux/FreeBSD)20,939AGPL-3.0
paketkoll_coreCheck installed distro files for changes (core library)20,885MPL-2.0
rs-drivelistThis is basically a Rust implementation of [Balena's drivelist](https://github.com/balena-io-modules/drivelist)20,089MIT OR Apache-2.0
smartcols-sysUnsafe Rust bindings for libsmartcols19,793MIT
proc-canonicalizeFix std::fs::canonicalize for /proc/PID/root and /proc/PID/cwd paths on Linux19,768MIT OR Apache-2.0
gpiosimDrive gpio-sims for GPIO software testing19,361Apache-2.0 OR MIT
fork_unionLow-latency OpenMP-style NUMA-aware cross-platform fine-grained parallelism library19,289Apache-2.0
ubusWork-in-progress: OpenWRT ubus client library in pure Rust19,239BSD-2-Clause
oxidebpfA pure-Rust library for managing eBPF programs.19,084BSD-3-Clause
priority-inheriting-lockA priority-inheriting lock based on Linux futexes18,972MIT OR Apache-2.0
libmount-sysUnsafe Rust bindings for libmount of util-linux18,225MIT
lazybar-coreA lightweight, event-driven X11 status bar18,007MIT
zwp-input-method-serviceSafe wrapper to easily use the zwp-input-method protocol16,531MIT
dma-bufLinux DMA-Buf Abstraction Library16,455non-standard
tokio-socketcan-isotpA asynchronous tokio ISO-TP library build on top of socketcan-isotp.15,755non-standard
gpiocdev-cliAccess GPIO lines from the Linux command line using the GPIO character device14,869Apache-2.0 OR MIT
udevrsPure Rust implementation of the user-land udev library14,743LGPL-2.0-or-later
tdxLibrary for Intel TDX14,144Apache-2.0
container-pidResolve container names to their PIDs14,092MIT
konfigkollKonfigkoll is a configuration management tool for Arch Linux and Debian (and derivatives)13,911MPL-2.0
tiffinA minimal container runtime for Linux for setting up chroot-like environments13,831MIT
installed_pkgA simple cross-platform crate that lists all the apps installed on a system.13,521MIT OR Apache-2.0
sevctlAdministrative utility for AMD SEV13,515Apache-2.0
systemd_tmpfilesA parser for systemd-tmpfiles configuration files13,310MPL-2.0
paketkoll_typesCheck installed distro files for changes (types library)13,282MPL-2.0
uoctl`ioctl`, uoctl, we all octl. Helpers for binding to `ioctl`-based interfaces.13,1930BSD
evdiHigh-level bindings for evdi13,031MIT
whomeA command line program for detecting the current user's name and environment. A
rust replacement for `whoami` and `hostname` with…12,520Apache-2.0 OR BSL-1.0 OR MIT
paketkoll_cacheCheck installed distro files for changes (caching library)12,325MPL-2.0
hitaki-sysFFI bindings for hitaki library12,211MIT
alsatimer-sysFFI binding for alsatimer library12,073MIT
hinoko-sysFFI bindings for hinoko library11,778MIT
lazybar-msgIPC for lazybar using UNIX sockets11,682MIT
linux-video-coreLinux V4L2 device interfacing11,489MIT
pprof-allocAllocation profiling and Linux memory telemetry for Rust services.11,377Apache-2.0
hitakiAPI bindings for hitaki library11,245MIT
nftables-jsonSerde JSON model for interacting with the nftables `nft` executable11,035MIT OR Apache-2.0
hinokoAPI bindings for hinoko library10,928MIT
alsatimerAPI binding for alsatimer library10,925MIT
alsaseq-sysFFI binding for alsaseq library10,907MIT
syscalls-rustLinux syscalls for rust10,837GPL-3.0-only
alsactl-sysFFI binding for alsactl library10,773MIT
palinUtility Liblary for linux's package managers, such as apt, yum, pacman.10,514MIT
evdi-sysLow level bindings for evdi10,162MIT
libmem-sysAdvanced Game Hacking Library (Windows/Linux/FreeBSD)10,135AGPL-3.0
alsactlAPI binding for alsactl library10,020MIT
alsarawmidi-sysFFI binding for alsarawmidi library10,018MIT
alsahwdep-sysFFI binding for alsahwdep library9,958MIT
tcp-save-synCapture raw SYN from TCP connections on Linux9,903Apache-2.0
libbtrfsRust library for working with the btrfs filesystem9,486MIT
alsarawmidiAPI binding for alsarawmidi library9,320MIT
faf-syscallRaw (asm), fast system calls for linux with no dependencies (no_std)9,297Unlicense
alsahwdepAPI binding for alsahwdep library9,239MIT
libublk-rs-sysLow-level FFI bindings for Linux ublk (userspace block device) kernel interface9,233MIT OR Apache-2.0
sd-id128A wrapper for sd-id128 implemented in libsystemd.9,130AGPL-3.0
alsaseqAPI binding for alsaseq library8,999MIT
procstatParses the /proc/stat file into a struct.8,898MIT
rootasroleA better alternative to sudo(-rs)/su8,766LGPL-3.0-or-later
rupamixRust PA Mixer is a cli tool for interfacing with Pulse Audio8,664non-standard
peekpokepeekpoke - a lightweight Rust library for accessing physical addresses using /dev/mem in Linux8,663MIT OR Apache-2.0
wireless-regdbcreate a linux wireless regulatory db firmware8,618MirOS
pipewire-wrapperRust bindings for PipeWire8,440MIT
hostname1-zbusdbus bindings for org.freedesktop.hostname1 with zbus8,304MPL-2.0
tokio-linux-videoLinux V4L2 device interfacing with tokio8,179MIT
ddevmemSafe, ergonomic access to physical memory via /dev/mem with volatile MMIO semantics, declarative register maps, and an optional…8,015MIT
hidg-coreLinux USB HID Gadget emulation7,702MIT
sd-sysFFI for libsystemd7,612AGPL-3.0
mempeekA command line tool that resembles a debugger as well as Cheat Engine, to search for values in memory7,496BSD-2-Clause
sysinfo_dot_hA tiny sys/sysinfo.h wrapper7,373MIT
network-manager-connection-actionExecute commands on connections change using DBus network manager events7,091BSD-2-Clause
cxl_rsCompute Express Link for Linux bindings7,082MIT
evdevilBindings to Linux' input device APIs: evdev and uinput7,0580BSD
systemd_socketA convenience crate for optionally supporting systemd socket activation.6,979MITNFA
pidfd_getfdBinding to and a wrapper for the pidfd_getfd syscall6,946MIT OR Apache-2.0
epoll-rsHigh level bindings to linux's epoll interface6,810MIT OR Apache-2.0
geoclueRust bindings to the Geoclue geolocation library6,676Apache-2.0 OR MIT
hardened-malloc-sysRust bindings for GrapheneOS allocator6,646MIT
hardened-mallocGlobal allocator using GrapheneOS allocator6,551MIT
zwp-input-method(Unsafe) Rust code generated with wayland-scanner crate for input-method-unstable-v2 protocol6,401MIT
extrasafe-multiarchMake your code extrasafe by reducing what it can access.6,309MIT
linux-file-infoThis crate is for gathering useful infos about linux entities(files, folders or symlinks) with developer friendly way.6,307MIT
focus_monitorLibrary for iterating over the focused window each time it changes6,231MIT
async-std-gpiodLinux GPIO character device interfacing with async-std6,139MIT
firepilotInterface to work with Firecracker microVMs6,111MIT
fs-verityProduce fs-verity measurements in pure Rust, or access the Linux kernel APIs to freeze a file with `fs-verity` and get its digest6,038MIT OR Apache-2.0
bluez-async-otsBluetooth Object Transfer Service (OTS) Client for bluez-async.5,961MIT OR Apache-2.0
scd30_i2cRust Trait for SCD30 device I2C interface related operations.5,924MIT
linux-kernel-cmdlineA parser for the Linux kernel command line (/proc/cmdline), supporting both
byte-level and UTF-8 parsing with proper quote…5,679MIT OR Apache-2.0
libprocmemA /proc/<pid>/mem reading and writing library5,463BSD-2-Clause
copollMinimalistic abstractions for the epoll linux api5,368Apache-2.0
linux-memutilsBasic utilities for reading from physical memory on Linux.5,359MIT
mountinfoA Rust library for parsing mount points on Linux and other Unix systems.5,327MIT
filkollFind out what package owns a file5,282GPL-3.0-only
linux_max6675A library that reads temperature data from a MAX6675 over the Linux kernel's SPI API.5,192MIT
input_event_codes_hashmapHashmaps to look up the u32 value for a given input event code5,114GPL-2.0-only
lxinfoLinux System Information for systemd systems5,020MIT
hidgLinux USB HID Gadget emulation4,821MIT
monitord-exportermonitord-exporter ... let prometheus know how happy your systemd is! 😊4,698GPL-2.0-or-later
linux-videoLinux V4L2 device interfacing4,694MIT
linux-libc-auxvA parser and builder for the Linux process initial stack layout - use it to
decode or construct argc, argv, envp, and auxv…4,631MIT
bb-drivelistThis is basically a Rust implementation of [Balena's drivelist](https://github.com/balena-io-modules/drivelist)4,622MIT OR Apache-2.0
async_linux_spec_fdasynchronous linux specific fd in rust.4,543non-standard
tokio-hidgLinux USB HID Gadget emulation for tokio async runtime4,541MIT