18 stdenv.mkDerivation (finalAttrs: {
20 version = "0.8.2-pre";
22 src = fetchFromGitHub {
26 # Instead of applying several patches for Python 3.12 compat, just take the latest, from:
27 # use old get python lib for v2 (#437)
28 rev = "8c6cb7c5223fad995e355486527589c63aa3b21e";
29 hash = "sha256-CKasL1mlpeuxXyPe6VDdAvb1l5a1cwWgyP7XX1aM73I=";
42 ++ lib.optionals usePython [
47 propagatedBuildInputs = lib.optionals usePython [ python.pkgs.numpy ];
49 cmakeFlags = lib.optionals usePython [ "-DUSE_PYTHON_CONFIG=ON" ];
51 postFixup = lib.optionalString (extraPackages != [ ]) (
52 # Join all plugins via symlinking
53 lib.pipe extraPackages [
55 ${buildPackages.xorg.lndir}/bin/lndir -silent ${pkg} $out
60 # Needed for at least the remote plugin server
61 for file in $out/bin/*; do
62 wrapProgram "$file" --prefix SOAPY_SDR_PLUGIN_PATH : ${lib.escapeShellArg (lib.makeSearchPath finalAttrs.passthru.searchPath extraPackages)}
68 tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
69 searchPath = "lib/SoapySDR/modules${lib.versions.majorMinor finalAttrs.version}";
73 homepage = "https://github.com/pothosware/SoapySDR";
74 description = "Vendor and platform neutral SDR support library";
75 license = licenses.boost;
76 maintainers = with maintainers; [
80 mainProgram = "SoapySDRUtil";
81 pkgConfigModules = [ "SoapySDR" ];
82 platforms = platforms.unix;