1{
2 lib,
3 buildDunePackage,
4 fetchurl,
5 ppx_sexp_conv,
6 ppx_cstruct,
7 lwt,
8 mirage-net,
9 io-page,
10 mirage-xen,
11 ipaddr,
12 mirage-profile,
13 shared-memory-ring,
14 sexplib,
15 logs,
16 macaddr,
17 lwt-dllist,
18 result,
19}:
20
21buildDunePackage rec {
22 pname = "netchannel";
23 version = "2.1.3";
24
25 minimalOCamlVersion = "4.08";
26 duneVersion = "3";
27
28 src = fetchurl {
29 url = "https://github.com/mirage/mirage-net-xen/releases/download/v${version}/mirage-net-xen-${version}.tbz";
30 hash = "sha256-gOpzY4bn9L8wkbeViXy/XQmxKqqJfd99bcHQFitYFOE=";
31 };
32
33 buildInputs = [
34 ppx_cstruct
35 ];
36
37 propagatedBuildInputs = [
38 ppx_sexp_conv
39 lwt
40 mirage-net
41 io-page
42 mirage-xen
43 ipaddr
44 mirage-profile
45 shared-memory-ring
46 sexplib
47 logs
48 macaddr
49 lwt-dllist
50 result
51 ];
52
53 meta = with lib; {
54 description = "Network device for reading and writing Ethernet frames via then Xen netfront/netback protocol";
55 license = licenses.isc;
56 maintainers = [ maintainers.sternenseemann ];
57 homepage = "https://github.com/mirage/mirage-net-xen";
58 };
59}