From 4097ffcc29e9d6d12d5fd2cb22dae177a97784aa Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Fri, 3 Jan 2020 20:25:11 +0100 Subject: [PATCH] soapysdr: add as python module Use "toPythonModule" function to make python interface available. --- pkgs/applications/radio/soapysdr/default.nix | 11 +++++++---- pkgs/top-level/all-packages.nix | 3 +-- pkgs/top-level/python-packages.nix | 12 +++++++++++- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/radio/soapysdr/default.nix b/pkgs/applications/radio/soapysdr/default.nix index 5e4a78cfbd2..c4879f01e60 100644 --- a/pkgs/applications/radio/soapysdr/default.nix +++ b/pkgs/applications/radio/soapysdr/default.nix @@ -1,7 +1,8 @@ { stdenv, lib, lndir, makeWrapper , fetchFromGitHub, cmake , libusb, pkgconfig -, python, swig2, numpy, ncurses +, usePython ? false +, python, ncurses, swig2 , extraPackages ? [] } : @@ -24,12 +25,14 @@ in stdenv.mkDerivation { }; nativeBuildInputs = [ cmake makeWrapper pkgconfig ]; - buildInputs = [ libusb ncurses numpy python swig2 ]; + buildInputs = [ libusb ncurses ] + ++ lib.optionals usePython [ python swig2 ]; + + propagatedBuildInputs = lib.optional usePython python.pkgs.numpy; cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" - "-DUSE_PYTHON_CONFIG=ON" - ]; + ] ++ lib.optional usePython "-DUSE_PYTHON_CONFIG=ON"; postFixup = lib.optionalString (lib.length extraPackages != 0) '' # Join all plugins via symlinking diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ef9531719eb..4c9c2e96784 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14097,12 +14097,11 @@ in soapyhackrf = callPackage ../applications/radio/soapyhackrf { }; - soapysdr = callPackage ../applications/radio/soapysdr { inherit (python3Packages) python numpy; }; + soapysdr = callPackage ../applications/radio/soapysdr { }; soapyremote = callPackage ../applications/radio/soapyremote { }; soapysdr-with-plugins = callPackage ../applications/radio/soapysdr { - inherit (python3Packages) python numpy; extraPackages = [ limesuite soapyairspy diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cd535c9f3d6..3e5ddabacc0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1325,6 +1325,16 @@ in { snapcast = callPackage ../development/python-modules/snapcast { }; + soapysdr = toPythonModule (pkgs.soapysdr.override { + python = self.python; + usePython = true; + }); + + soapysdr-with-plugins = toPythonModule (pkgs.soapysdr-with-plugins.override { + python = self.python; + usePython = true; + }); + sparse = callPackage ../development/python-modules/sparse { }; spglib = callPackage ../development/python-modules/spglib { }; @@ -1953,7 +1963,7 @@ in { certifi = callPackage ../development/python-modules/certifi { }; certipy = callPackage ../development/python-modules/certipy {}; - + characteristic = callPackage ../development/python-modules/characteristic { }; chart-studio = callPackage ../development/python-modules/chart-studio { };