1 { lib, stdenv, fetchFromGitHub, premake5, doxygen, libsodium, mbedtls }:
7 src = fetchFromGitHub {
8 owner = "networkprotocol";
10 rev = "e02219c102d9b440290539036992d77608eab3b0";
11 sha256 = "0jn25ddv73hwjals883a910m66kwj6glxxhnmn96bpzsvsaimnkr";
12 fetchSubmodules = true;
15 nativeBuildInputs = [ premake5 doxygen ];
16 propagatedBuildInputs = [ libsodium mbedtls ];
23 install -Dm555 -t $out/lib bin/libyojimbo.a
24 install -Dm444 -t $out/include yojimbo.h
25 mkdir -p $out/share/doc/yojimbo
26 cp -r docs/html $out/share/doc/yojimbo
32 description = "A network library for client/server games with dedicated servers";
34 yojimbo is a network library for client/server games with dedicated servers.
35 It's designed around the networking requirements of competitive multiplayer games like first person shooters.
36 As such it provides a time critical networking layer on top of UDP, with a client/server architecture supporting up to 64 players per-dedicated server instance.
38 homepage = "https://github.com/networkprotocol/yojimbo";
39 license = licenses.bsd3;
40 platforms = platforms.x86_64;
41 maintainers = with maintainers; [ paddygord ];