Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/asomers/mdconfig-rs
Rust bindings to FreeBSD's md(4) driver
https://github.com/asomers/mdconfig-rs
Last synced: 3 months ago
JSON representation
Rust bindings to FreeBSD's md(4) driver
- Host: GitHub
- URL: https://github.com/asomers/mdconfig-rs
- Owner: asomers
- License: apache-2.0
- Created: 2024-06-01T23:12:26.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-06-23T17:03:50.000Z (7 months ago)
- Last Synced: 2024-09-18T05:02:23.101Z (4 months ago)
- Language: Rust
- Size: 46.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# mdconfig
Rust bindings to FreeBSD's [md(4)] driver.
`md` devices are memory disks, that can be backed by RAM, swap, or a file. They can be useful
for temporary storage, and they're very useful for working with disk images as
files. This crate provides bindings to `md` that are equivalent to what the
[mdconfig(8)] utility provides, but Rustier.![Build Status](https://api.cirrus-ci.com/github/asomers/mdconfig.svg)
[![Crates.io](https://img.shields.io/crates/v/mdconfig.svg)](https://crates.io/crates/mdconfig)[Documentation](https://docs.rs/crate/mdconfig)
[md(4)]: https://man.freebsd.org/cgi/man.cgi?query=md
[mdconfig(8)]: https://man.freebsd.org/cgi/man.cgi?query=mdconfig# Usage
See the examples in the API docs. The general idea is to create a `Builder`
struct, set various options, and then construct the `Md` device from that. Most
applications will then open the `Md` device's path with the standard file system
API. When complete, the `Md` object will tell the kernel to deallocate the `md`
device upon Drop.# Platforms
This crate only works on FreeBSD. Similarly named drivers in NetBSD and
DragonflyBSD actually have very different APIs.# Minimum Supported Rust Version (MSRV)
`mdconfig` does not guarantee any specific MSRV. Rather, it guarantees
compatibility with the oldest rustc shipped in the FreeBSD package collection.* https://www.freshports.org/lang/rust/
# License
`mdconfig` is primarily distributed under the terms of both the MIT license and
the Apache License (Version 2.0).See LICENSE-APACHE, and LICENSE-MIT for details.