diff --git a/pkgs/development/gnuradio-modules/bladeRF/default.nix b/pkgs/development/gnuradio-modules/bladeRF/default.nix new file mode 100644 index 000000000000..6251784b3a4c --- /dev/null +++ b/pkgs/development/gnuradio-modules/bladeRF/default.nix @@ -0,0 +1,64 @@ +{ + lib, + mkDerivation, + fetchFromGitHub, + cmake, + pkg-config, + boost, + doxygen, + gmp, + gnuradio, + libbladeRF, + mpir, + osmosdr, + python, + spdlog, +}: + +mkDerivation { + pname = "gr-bladeRF"; + version = "0-unstable-2023-11-20"; + + src = fetchFromGitHub { + owner = "Nuand"; + repo = "gr-bladeRF"; + rev = "27de2898dbee75d55c61f541315e3853e602e526"; + hash = "sha256-josovHEp2VxgZqItkTAISdY1LARMIvQKD604fh4iZWc="; + }; + + buildInputs = + [ + boost + doxygen + gmp + gnuradio + libbladeRF + mpir + osmosdr + spdlog + ] + ++ lib.optionals (gnuradio.hasFeature "python-support") [ + python.pkgs.numpy + python.pkgs.pybind11 + ]; + cmakeFlags = [ + (lib.cmakeBool "ENABLE_PYTHON" (gnuradio.hasFeature "python-support")) + ]; + nativeBuildInputs = + [ + cmake + pkg-config + ] + ++ lib.optionals (gnuradio.hasFeature "python-support") [ + python.pkgs.mako + python.pkgs.pygccxml + ]; + + meta = { + description = "GNU Radio source and sink blocks for bladeRF devices"; + homepage = "https://github.com/Nuand/gr-bladeRF"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ wucke13 ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/gnuradio-packages.nix b/pkgs/top-level/gnuradio-packages.nix index a2099ea4054b..1ff582919683 100644 --- a/pkgs/top-level/gnuradio-packages.nix +++ b/pkgs/top-level/gnuradio-packages.nix @@ -35,6 +35,8 @@ in { ### Packages + bladeRF = callPackage ../development/gnuradio-modules/bladeRF/default.nix { }; + osmosdr = callPackage ../development/gnuradio-modules/osmosdr/default.nix { }; fosphor = callPackage ../development/gnuradio-modules/fosphor/default.nix { };