Skip to content

Commit 58f20d9

Browse files
committed
Metadata improvements
1 parent 19cb304 commit 58f20d9

File tree

2 files changed

+59
-0
lines changed

2 files changed

+59
-0
lines changed

Cargo.toml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,32 @@
22
name = "wslpluginapi-sys"
33
version = "0.1.0-alpha.0+2.1.3"
44
edition = "2021"
5+
readme = "README.md"
6+
authors = ["Mickaël Véril <mika.veril@wanadoo.fr>"]
7+
description = "Rust bindings for the WSL Plugin API"
8+
license = "MIT"
9+
repository = "https://github.com/mveril/wslpluginapi-sys"
10+
documentation = "https://docs.rs/wslpluginapi-sys"
11+
keywords = [
12+
"wsl",
13+
"plugin",
14+
"api",
15+
"windows",
16+
"linux",
17+
"interop",
18+
"rust",
19+
"ffi",
20+
]
21+
categories = [
22+
"development-tools::build-tools",
23+
"os::windows",
24+
"os::windows-apis",
25+
"development-tools::debugging",
26+
"development-tools::testing",
27+
"development-tools::virtualization",
28+
"external-ffi-bindings",
29+
]
30+
531

632
[features]
733
hooks-field-names = ["dep:struct-field-names-as-array"]

README.MD

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# wslpluginapi-sys
2+
3+
`wslpluginapi-sys` is a Rust crate that provides low-level bindings to the Windows Subsystem for Linux (WSL) Plugin API. It offers a direct interface to the functions and structures defined in the WSL Plugin API, facilitating the development of WSL plugins in Rust.
4+
5+
## Features
6+
7+
- **Comprehensive Bindings**: Provides complete bindings to the WSL Plugin API, including structures like `GUID` and other essential components.
8+
- **Unsafe Abstractions**: Direct, unsafe bindings closely mirroring the original C API for maximum control and flexibility.
9+
10+
## Prerequisites
11+
12+
Before using `wslpluginapi-sys`, ensure you have the following installed:
13+
14+
- **Rust**: Latest stable version.
15+
- **Windows SDK**: Required for access to necessary headers and libraries.
16+
- **Nuget**: require nuget cli in the Windows Path.
17+
18+
## Installation
19+
20+
Add `wslpluginapi-sys` to your `Cargo.toml`:
21+
22+
```toml
23+
[dependencies]
24+
wslpluginapi-sys = "0.1.0"
25+
```
26+
27+
Safety
28+
This crate provides unsafe bindings that closely follow the original C API. Users must ensure they uphold the necessary safety invariants when interacting with these bindings. Proper handling of pointers, memory management, and adherence to the API's expected usage patterns are crucial.
29+
30+
License
31+
This project is licensed under the MIT License. See the LICENSE file for details.
32+
33+
Note: This crate is part of the [WSLPlugin-rs](https://github.com/mveril/wslplugins-rs) project, which aims to create an idiomatic Rust framework for developing WSL plugins.

0 commit comments

Comments
 (0)