2018-11-11 22:20:41 +01:00
|
|
|
{ stdenv, fetchFromGitHub, openssl, doxygen
|
|
|
|
, boost, sqlite, pkgconfig, python, pythonPackages, wafHook }:
|
2014-11-11 10:14:30 +01:00
|
|
|
let
|
2018-10-20 21:16:26 +02:00
|
|
|
version = "0.6.3";
|
2014-11-11 10:14:30 +01:00
|
|
|
in
|
|
|
|
stdenv.mkDerivation {
|
2018-10-20 21:16:26 +02:00
|
|
|
name = "ndn-cxx-${version}";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "named-data";
|
|
|
|
repo = "ndn-cxx";
|
|
|
|
rev = "a3bf4319ed483a4a6fe2c96b79ec4491d7217f00";
|
|
|
|
sha256 = "076jhrjigisqz5n8dgxwd5fhimg69zhm834m7w9yvf9afgzrr50h";
|
2014-11-11 10:14:30 +01:00
|
|
|
};
|
2018-11-11 22:20:41 +01:00
|
|
|
nativeBuildInputs = [ pkgconfig wafHook ];
|
2018-10-20 21:16:26 +02:00
|
|
|
buildInputs = [ openssl doxygen boost sqlite python pythonPackages.sphinx];
|
2018-11-11 22:20:41 +01:00
|
|
|
configureFlags = [
|
|
|
|
"--with-openssl=${openssl.dev}"
|
|
|
|
"--boost-includes=${boost.dev}/include"
|
|
|
|
"--boost-libs=${boost.out}/lib"
|
|
|
|
];
|
2014-11-11 10:14:30 +01:00
|
|
|
meta = with stdenv.lib; {
|
2017-08-01 22:03:30 +02:00
|
|
|
homepage = http://named-data.net/;
|
2014-11-11 10:14:30 +01:00
|
|
|
description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
|
|
|
|
longDescription = ''
|
|
|
|
ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
|
|
|
|
primitives that can be used to implement various NDN applications.
|
|
|
|
NDN operates by addressing and delivering Content Objects directly
|
|
|
|
by Name instead of merely addressing network end-points. In addition,
|
|
|
|
the NDN security model explicitly secures individual Content Objects
|
|
|
|
rather than securing the connection or “pipe”. Named and secured
|
|
|
|
content resides in distributed caches automatically populated on
|
|
|
|
demand or selectively pre-populated. When requested by name, NDN
|
|
|
|
delivers named content to the user from the nearest cache, thereby
|
|
|
|
traversing fewer network hops, eliminating redundant requests,
|
|
|
|
and consuming less resources overall.
|
|
|
|
'';
|
|
|
|
license = licenses.lgpl3;
|
|
|
|
platforms = stdenv.lib.platforms.unix;
|
|
|
|
maintainers = [ maintainers.sjmackenzie ];
|
|
|
|
};
|
|
|
|
}
|