From 735a9ae56e380c520c0e8ef6ec6a8cfdf909f011 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Sat, 9 Feb 2019 19:36:46 +0100 Subject: soapysdr: Move from misc to radio --- pkgs/applications/radio/soapysdr/default.nix | 51 ++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 pkgs/applications/radio/soapysdr/default.nix (limited to 'pkgs/applications/radio/soapysdr') diff --git a/pkgs/applications/radio/soapysdr/default.nix b/pkgs/applications/radio/soapysdr/default.nix new file mode 100644 index 0000000000000..6754e8f2a55cb --- /dev/null +++ b/pkgs/applications/radio/soapysdr/default.nix @@ -0,0 +1,51 @@ +{ stdenv, lib, lndir, makeWrapper +, fetchFromGitHub, cmake +, libusb, pkgconfig +, python, swig2, numpy, ncurses +, extraPackages ? [] +} : + +let + + version = "0.7.1"; + modulesVersion = with lib; versions.major version + "." + versions.minor version; + modulesPath = "lib/SoapySDR/modules" + modulesVersion; + extraPackagesSearchPath = lib.makeSearchPath modulesPath extraPackages; + +in stdenv.mkDerivation { + name = "soapysdr-${version}"; + + src = fetchFromGitHub { + owner = "pothosware"; + repo = "SoapySDR"; + rev = "soapy-sdr-${version}"; + sha256 = "1rbnd3w12kzsh94fiywyn4vch7h0kf75m88fi6nq992b3vnmiwvl"; + }; + + nativeBuildInputs = [ cmake makeWrapper pkgconfig ]; + buildInputs = [ libusb ncurses numpy python swig2 ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DUSE_PYTHON_CONFIG=ON" + ]; + + postFixup = lib.optionalString (lib.length extraPackages != 0) '' + # Join all plugins via symlinking + for i in ${toString extraPackages}; do + ${lndir}/bin/lndir -silent $i $out + done + # Needed for at least the remote plugin server + for file in $out/bin/*; do + wrapProgram "$file" --prefix SOAPY_SDR_PLUGIN_PATH : ${extraPackagesSearchPath} + done + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/pothosware/SoapySDR; + description = "Vendor and platform neutral SDR support library"; + license = licenses.boost; + maintainers = with maintainers; [ markuskowa ]; + platforms = platforms.linux; + }; +} -- cgit 1.4.1