Skip to content

hussein-aitlahcen/gns-rs

Repository files navigation

Rust abstraction for Valve GameNetworkingSockets

Crates.io Docs

Simple, high-level and (somehow) type-safe wrapper for Valve GameNetworkingSockets.

The library does not require your application to be running with Steam and this wrapper is intended to wrap the open-source version only.

Some features might be missing, if you are interested to introduce more abstraction, feel free to open a PR/Issue.

Libraries:

  • gns-sys is the C++ library from Valve compiled with bindings generated (the library is directly compiled by cargo so you don't need to have it already installed).
  • gns is the high level, type-safe Rust wrapper.

Building

A few system libraries/tools are required in order to compile the C++ library as part of gns-sys.

System libraries required:

  • clang
  • protobuf
  • openssl
  • abseil (if using a recent version of protobuf)

Tools required to be in $PATH:

  • git
  • protobuf-compiler

Windows

Building on Windows uses vcpkg in manifest mode to gather and build dependencies. As such, the only requirement on Windows is to have clang installed and git available in $PATH.

About

Valve GameNetworkingSockets Rust Wrapper

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published