14 stdenv.mkDerivation rec {
18 src = fetchFromGitHub {
21 rev = "${pname}-${version}";
22 sha256 = "sha256-oTSc/lh0fDdk7dQeDhYKX5+gFl2t2Xlu1KkNmw7DitE=";
25 nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx wafHook ];
27 buildInputs = [ boost175 openssl sqlite ];
30 "--with-openssl=${openssl.dev}"
31 "--boost-includes=${boost175.dev}/include"
32 "--boost-libs=${boost175.out}/lib"
33 # "--with-tests" # disabled since upstream tests fail (Net/TestFaceUri/ParseDev Bug #3896)
37 doCheck = false; # disabled since upstream tests fail (Net/TestFaceUri/ParseDev Bug #3896)
40 LD_PRELOAD=build/ndn-cxx.so build/unit-tests
45 homepage = "https://named-data.net/";
46 description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
48 ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
49 primitives that can be used to implement various NDN applications.
50 NDN operates by addressing and delivering Content Objects directly
51 by Name instead of merely addressing network end-points. In addition,
52 the NDN security model explicitly secures individual Content Objects
53 rather than securing the connection or “pipe”. Named and secured
54 content resides in distributed caches automatically populated on
55 demand or selectively pre-populated. When requested by name, NDN
56 delivers named content to the user from the nearest cache, thereby
57 traversing fewer network hops, eliminating redundant requests,
58 and consuming less resources overall.
60 license = licenses.lgpl3;
61 platforms = platforms.unix;
62 maintainers = with maintainers; [ sjmackenzie bertof ];