diff --git a/nix/avro-c++/default.nix b/nix/avro-c++/default.nix
new file mode 100644
index 0000000000..2cd03253e7
--- /dev/null
+++ b/nix/avro-c++/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, cmake, boost155, pythonPackages
+}:
+
+let version = "1.7.5"; in
+
+stdenv.mkDerivation {
+ name = "avro-c++-${version}";
+
+ src = fetchurl {
+ url = "mirror://apache/avro/avro-${version}/cpp/avro-cpp-${version}.tar.gz";
+ sha256 = "064ssbbgrc3hyalzj8rn119bsrnyk1vlpkhl8gghv96jgqbpdyb3";
+ };
+
+ buildInputs = [
+ cmake
+ boost155
+ pythonPackages.python
+ ];
+
+ enableParallelBuilding = true;
+
+ meta = {
+ description = "A C++ library which implements parts of the Avro Specification";
+ homepage = https://avro.apache.org/;
+ license = stdenv.lib.licenses.asl20;
+ maintainers = with stdenv.lib.maintainers; [ rasendubi ];
+ platforms = stdenv.lib.platforms.all;
+ };
+}
diff --git a/nix/default.nix b/nix/default.nix
index 0e81f228f4..3e4c41b6e3 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -33,6 +33,8 @@ let
callPackage = pkgs.lib.callPackageWith (pkgs // self);
self = rec {
+ avro-cpp = callPackage ./avro-c++ { };
+
gcc-xtensa-lx106 = callPackage ./gcc-xtensa-lx106 { };
esp8266-rtos-sdk = callPackage ./esp8266-rtos-sdk { };
diff --git a/pom.xml b/pom.xml
index e57b9262c8..1cb0686352 100644
--- a/pom.xml
+++ b/pom.xml
@@ -592,8 +592,12 @@ Copyright 2014-2016 CyberVision, Inc.
**/security.policy
doc/
- nix/astyle/max_indent.patch
gh-pages-stub/
+
+ nix/astyle/max_indent.patch
+
+ nix/avro-c++/
+
nix/kaa-docs/Gemfile.lock
nix/kaa-docs/gemset.nix