Merge pull request #39504 from markuskowa/soapysdr-pr

soapysdr+plugins: init at 0.6.1
This commit is contained in:
Jörg Thalheim 2018-05-07 13:44:16 +01:00 committed by GitHub
commit 4c41c182ae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 286 additions and 4 deletions

View File

@ -0,0 +1,53 @@
{ stdenv, fetchFromGitHub, cmake
, sqlite, wxGTK30, libusb1, soapysdr
, mesa_glu, libX11, gnuplot, fltk
} :
let
version = "18.04.1";
in stdenv.mkDerivation {
name = "limesuite-${version}";
src = fetchFromGitHub {
owner = "myriadrf";
repo = "LimeSuite";
rev = "v${version}";
sha256 = "1aaqnwif1j045hvj011k5dyqxgxx72h33r4al74h5f8al81zvzj9";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
libusb1
sqlite
wxGTK30
fltk
gnuplot
libusb1
soapysdr
mesa_glu
libX11
];
postInstall = ''
mkdir -p $out/lib/udev/rules.d
cp ../udev-rules/64-limesuite.rules $out/lib/udev/rules.d
mkdir -p $out/share/limesuite
cp bin/Release/lms7suite_mcu/* $out/share/limesuite
cp bin/dualRXTX $out/bin
cp bin/basicRX $out/bin
cp bin/singleRX $out/bin
'';
meta = with stdenv.lib; {
description = "Driver and GUI for LMS7002M-based SDR platforms";
homepage = https://github.com/myriadrf/LimeSuite;
license = licenses.asl20;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, cmake
, airspy, soapysdr
} :
let
version = "0.1.1";
in stdenv.mkDerivation {
name = "soapyairspy-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyAirspy";
rev = "soapy-airspy-${version}";
sha256 = "072vc9619s9f22k7639krr1p2418cmhgm44yhzy7x9dzapc43wvk";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ airspy soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyAirspy;
description = "SoapySDR plugin for Airspy devices";
license = licenses.mit;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,31 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig
, libbladeRF, soapysdr
} :
let
version = "0.3.5";
in stdenv.mkDerivation {
name = "soapybladerf-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyBladeRF";
rev = "soapy-bladerf-${version}";
sha256 = "1n7vy6y8k1smq3l729npxbhxbnrc79gz06dxkibsihz4k8sddkrg";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ libbladeRF soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyBladeRF;
description = "SoapySDR plugin for BladeRF devices";
license = licenses.lgpl21;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig
, hackrf, soapysdr
} :
let
version = "0.3.2";
in stdenv.mkDerivation {
name = "soapyhackrf-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyHackRF";
rev = "soapy-hackrf-${version}";
sha256 = "1sgx2nk8yrzfwisjfs9mw0xwc47bckzi17p42s2pbv7zcxzpb66p";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ hackrf soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyHackRF;
description = "SoapySDR plugin for HackRF devices";
license = licenses.mit;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, cmake, soapysdr }:
let
version = "0.4.3";
in stdenv.mkDerivation {
name = "soapyremote-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyRemote";
rev = "d07f43863b1ef79252f8029cfb5947220f21311d";
sha256 = "0i101dfqq0aawybv0qyjgsnhk39dc4q6z6ys2gsvwjhpf3d48aw0";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyRemote;
description = "SoapySDR plugin for remote access to SDRs";
license = licenses.boost;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,50 @@
{ stdenv, lib, lndir, makeWrapper
, fetchFromGitHub, cmake
, libusb, pkgconfig
, python, swig2, numpy, ncurses
, extraPackages ? []
} :
let
version = "0.6.1";
in stdenv.mkDerivation {
name = "soapysdr-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapySDR";
rev = "soapy-sdr-${version}";
sha256 = "1azbb2j6dv0b2dd5ks6yqd31j17sdhi9p82czwc8zy2isymax0l9";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ libusb ncurses numpy swig2 python ];
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
${makeWrapper}/bin/wrapProgram "$file" \
--prefix SOAPY_SDR_PLUGIN_PATH : ${lib.makeSearchPath "lib/SoapySDR/modules0.6" extraPackages}
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;
};
}

View File

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig
, uhd, boost, soapysdr
} :
let
version = "0.3.4";
in stdenv.mkDerivation {
name = "soapyuhd-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyUHD";
rev = "soapy-uhd-${version}";
sha256 = "1da7cjcvfdqhgznm7x14s1h7lwz5lan1b48akw445ah1vxwvh4hl";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ uhd boost soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
postPatch = ''
sed -i "s:DESTINATION .*uhd/modules:DESTINATION $out/lib/uhd/modules:" CMakeLists.txt
'';
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyAirspy;
description = "SoapySDR plugin for UHD devices";
license = licenses.gpl3;
maintainers = with maintainers; [ markuskowa ];
platforms = platforms.linux;
};
}

View File

@ -1,6 +1,6 @@
{ stdenv, buildEnv, fetchFromGitHub, cmake, pkgconfig
, qtbase, qtcharts, qtmultimedia, qtquickcontrols, qtquickcontrols2
, faad2, rtl-sdr, libusb, fftwSinglePrec }:
, faad2, rtl-sdr, soapysdr-with-plugins, libusb, fftwSinglePrec }:
let
version = "1.0-rc2";
@ -28,10 +28,11 @@ in stdenv.mkDerivation {
qtquickcontrols
qtquickcontrols2
rtl-sdr
soapysdr-with-plugins
];
cmakeFlags = [
"-DRTLSDR=true"
"-DRTLSDR=true" "-DSOAPYSDR=true"
];
enableParallelBuilding = true;
@ -41,7 +42,6 @@ in stdenv.mkDerivation {
homepage = http://www.welle.io/;
maintainers = with maintainers; [ ck3d ];
license = licenses.gpl2;
platforms = with platforms; linux ++ darwin;
platforms = with platforms; [ "x86_64-linux" "i686-linux" ] ++ darwin;
};
}

View File

@ -3535,6 +3535,8 @@ with pkgs;
libwebsockets = callPackage ../development/libraries/libwebsockets { };
limesuite = callPackage ../applications/misc/limesuite { };
limesurvey = callPackage ../servers/limesurvey { };
linuxquota = callPackage ../tools/misc/linuxquota { };
@ -11528,6 +11530,30 @@ with pkgs;
snappy = callPackage ../development/libraries/snappy { };
soapyairspy = callPackage ../applications/misc/soapyairspy { };
soapybladerf = callPackage ../applications/misc/soapybladerf { };
soapyhackrf = callPackage ../applications/misc/soapyhackrf { };
soapysdr = callPackage ../applications/misc/soapysdr { inherit (python3Packages) python numpy; };
soapyremote = callPackage ../applications/misc/soapyremote { };
soapysdr-with-plugins = callPackage ../applications/misc/soapysdr {
inherit (python3Packages) python numpy;
extraPackages = [
limesuite
soapyairspy
soapybladerf
soapyhackrf
soapyremote
soapyuhd
];
};
soapyuhd = callPackage ../applications/misc/soapyuhd { };
socket_wrapper = callPackage ../development/libraries/socket_wrapper { };
sofia_sip = callPackage ../development/libraries/sofia-sip { };