about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/gnuradio-modules
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-04-09 18:28:16 +0000
committerAlyssa Ross <hi@alyssa.is>2021-04-12 18:46:15 +0000
commitfd2e737e0678ee7d8081baef05b305146a2c0034 (patch)
treeac3e9b27576a0382335532d126f9a66d486bc638 /nixpkgs/pkgs/development/gnuradio-modules
parentcc207d720b6aa836e256c1ee9842bc739e630a8a (diff)
parent9e377a6ce42dccd9b624ae4ce8f978dc892ba0e2 (diff)
downloadnixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.gz
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.bz2
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.lz
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.xz
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.tar.zst
nixlib-fd2e737e0678ee7d8081baef05b305146a2c0034.zip
Merge remote-tracking branch 'nixpkgs/nixos-unstable'
Diffstat (limited to 'nixpkgs/pkgs/development/gnuradio-modules')
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/ais/default.nix44
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/gsm/default.nix48
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/limesdr/default.nix61
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/mkDerivation.nix25
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/nacl/default.nix46
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/osmosdr/default.nix86
-rw-r--r--nixpkgs/pkgs/development/gnuradio-modules/rds/default.nix59
7 files changed, 369 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/ais/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/ais/default.nix
new file mode 100644
index 000000000000..5ff4ffd75653
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/ais/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, pkg-config
+, python
+, boost
+, cppunit
+, log4cpp
+, osmosdr
+}:
+
+mkDerivation rec {
+  pname = "gr-ais";
+  version = "2015-12-20";
+  src = fetchFromGitHub {
+    owner = "bistromath";
+    repo = "gr-ais";
+    rev = "cdc1f52745853f9c739c718251830eb69704b26e";
+    sha256 = "1vl3kk8xr2mh5lf31zdld7yzmwywqffffah8iblxdzblgsdwxfl6";
+  };
+  disabledForGRafter = "3.8";
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    python
+  ];
+
+  buildInputs = [
+    cppunit
+    osmosdr
+    boost
+    log4cpp
+  ];
+
+  meta = with lib; {
+    description = "Gnuradio block for ais";
+    homepage = "https://github.com/bistromath/gr-ais";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ mog ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/gsm/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/gsm/default.nix
new file mode 100644
index 000000000000..835c5456668c
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/gsm/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, pkg-config
+, cppunit
+, swig
+, boost
+, log4cpp
+, python
+, libosmocore
+, osmosdr
+}:
+
+mkDerivation {
+  pname = "gr-gsm";
+  version = "2016-08-25";
+  src = fetchFromGitHub {
+    owner = "ptrkrysik";
+    repo = "gr-gsm";
+    rev = "3ca05e6914ef29eb536da5dbec323701fbc2050d";
+    sha256 = "13nnq927kpf91iqccr8db9ripy5czjl5jiyivizn6bia0bam2pvx";
+  };
+  disabledForGRafter = "3.8";
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+    python
+  ];
+
+  buildInputs = [
+    cppunit
+    log4cpp
+    boost
+    libosmocore
+    osmosdr
+  ];
+
+  meta = with lib; {
+    description = "Gnuradio block for gsm";
+    homepage = "https://github.com/ptrkrysik/gr-gsm";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ mog ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/limesdr/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/limesdr/default.nix
new file mode 100644
index 000000000000..c10ab9df391e
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/limesdr/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, gnuradio
+, cmake
+, pkg-config
+, doxygen
+, swig
+, python
+, log4cpp
+, mpir
+, boost
+, gmp
+, icu
+, limesuite
+}:
+
+let
+  version = {
+    "3.7" = "2.0.0";
+    "3.8" = "3.0.1";
+    "3.9" = null;
+  }.${gnuradio.versionAttr.major};
+  src = fetchFromGitHub {
+    owner = "myriadrf";
+    repo = "gr-limesdr";
+    rev = "v${version}";
+    sha256 = {
+      "3.7" = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq";
+      "3.8" = "ffs+8TU0yr6IW1xZJ/abQ1CQWGZM+zYqPRJxy3ZvM9U=";
+      "3.9" = null;
+    }.${gnuradio.versionAttr.major};
+  };
+in mkDerivation {
+  pname = "gr-limesdr";
+  inherit version src;
+  disabledForGRafter = "3.9";
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+    python
+  ];
+  buildInputs = [
+    log4cpp
+    mpir
+    boost
+    gmp
+    icu
+    limesuite
+  ];
+
+  meta = with lib; {
+    description = "Gnuradio source and sink blocks for LimeSDR";
+    homepage = "https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.markuskowa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/mkDerivation.nix b/nixpkgs/pkgs/development/gnuradio-modules/mkDerivation.nix
new file mode 100644
index 000000000000..014968f82cc6
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/mkDerivation.nix
@@ -0,0 +1,25 @@
+{ lib
+, unwrapped
+}:
+
+mkDerivation:
+
+args:
+
+# Check if it's supposed to not get built for the current gnuradio version
+if (builtins.hasAttr "disabledForGRafter" args) &&
+(lib.versionAtLeast unwrapped.versionAttr.major args.disabledForGRafter) then
+let name = args.name or "${args.pname}"; in
+throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}"
+else
+
+let
+  args_ = {
+    enableParallelBuilding = args.enableParallelBuilding or true;
+    nativeBuildInputs = (args.nativeBuildInputs or []);
+    # We add gnuradio and volk itself by default - most gnuradio based packages
+    # will not consider it a depenency worth mentioning and it will almost
+    # always be needed
+    buildInputs = (args.buildInputs or []) ++ [ unwrapped unwrapped.volk ];
+  };
+in mkDerivation (args // args_)
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/nacl/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/nacl/default.nix
new file mode 100644
index 000000000000..1ffb0afee07e
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/nacl/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, pkg-config
+, cppunit
+, swig
+, boost
+, log4cpp
+, python
+, libsodium
+}:
+
+mkDerivation {
+  pname = "gr-nacl";
+  version = "2017-04-10";
+  src = fetchFromGitHub {
+    owner = "stwunsch";
+    repo = "gr-nacl";
+    rev = "15276bb0fcabf5fe4de4e58df3d579b5be0e9765";
+    sha256 = "018np0qlk61l7mlv3xxx5cj1rax8f1vqrsrch3higsl25yydbv7v";
+  };
+  disabledForGRafter = "3.8";
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+    python
+  ];
+
+  buildInputs = [
+    cppunit
+    log4cpp
+    boost
+    libsodium
+  ];
+
+  meta = with lib; {
+    description = "Gnuradio block for encryption";
+    homepage = "https://github.com/stwunsch/gr-nacl";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux ++ platforms.darwin;
+    maintainers = with maintainers; [ mog ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/osmosdr/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/osmosdr/default.nix
new file mode 100644
index 000000000000..0e1cf244c8fc
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/osmosdr/default.nix
@@ -0,0 +1,86 @@
+{ lib
+, mkDerivation
+, fetchgit
+, gnuradio
+, cmake
+, pkg-config
+, log4cpp
+, mpir
+, boost
+, gmp
+, fftwFloat
+, python
+, swig
+, uhd
+, icu
+, airspy
+, hackrf
+, libbladeRF
+, rtl-sdr
+, soapysdr-with-plugins
+}:
+
+let
+  version = {
+    "3.7" = "0.1.5";
+    "3.8" = "0.2.2";
+    "3.9" = null;
+  }.${gnuradio.versionAttr.major};
+  src = fetchgit {
+    url = "git://git.osmocom.org/gr-osmosdr";
+    rev = "v${version}";
+    sha256 = {
+      "3.7" = "0bf9bnc1c3c4yqqqgmg3nhygj6rcfmyk6pybi27f7461d2cw1drv";
+      "3.8" = "HT6xlN6cJAnvF+s1g2I1uENhBJJizdADlLXeSD0rEqs=";
+      "3.9" = null;
+    }.${gnuradio.versionAttr.major};
+  };
+in mkDerivation {
+  pname = "gr-osmosdr";
+  inherit version src;
+  disabledForGRafter = "3.9";
+
+  buildInputs = [
+    log4cpp
+    mpir
+    boost
+    fftwFloat
+    gmp
+    icu
+    airspy
+    hackrf
+    libbladeRF
+    rtl-sdr
+    soapysdr-with-plugins
+  ] ++ lib.optional (gnuradio.hasFeature "gr-uhd" gnuradio.features) [
+    uhd
+  ];
+  cmakeFlags = [
+    (if (gnuradio.hasFeature "python-support" gnuradio.features) then
+      "-DENABLE_PYTHON=ON"
+    else
+      "-DENABLE_PYTHON=OFF"
+    )
+  ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+  ] ++ lib.optionals (gnuradio.hasFeature "python-support" gnuradio.features) [
+      (if (gnuradio.versionAttr.major == "3.7") then
+        python.pkgs.cheetah
+      else
+        python.pkgs.Mako
+      )
+      python
+    ]
+  ;
+
+  meta = with lib; {
+    description = "Gnuradio block for OsmoSDR and rtl-sdr";
+    homepage = "https://sdr.osmocom.org/trac/wiki/GrOsmoSDR";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ bjornfor ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/gnuradio-modules/rds/default.nix b/nixpkgs/pkgs/development/gnuradio-modules/rds/default.nix
new file mode 100644
index 000000000000..c068d6af8105
--- /dev/null
+++ b/nixpkgs/pkgs/development/gnuradio-modules/rds/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, gnuradio
+, cmake
+, pkg-config
+, swig
+, python
+, log4cpp
+, mpir
+, boost
+, gmp
+, icu
+}:
+
+let
+  version = {
+    "3.7" = "1.1.0";
+    "3.8" = "3.8.0";
+    "3.9" = null;
+  }.${gnuradio.versionAttr.major};
+  src = fetchFromGitHub {
+    owner = "bastibl";
+    repo = "gr-rds";
+    rev = "v${version}";
+    sha256 = {
+      "3.7" = "0jkzchvw0ivcxsjhi1h0mf7k13araxf5m4wi5v9xdgqxvipjzqfy";
+      "3.8" = "+yKLJu2bo7I2jkAiOdjvdhZwxFz9NFgTmzcLthH9Y5o=";
+      "3.9" = null;
+    }.${gnuradio.versionAttr.major};
+  };
+in mkDerivation {
+  pname = "gr-rds";
+  inherit version src;
+  disabledForGRafter = "3.9";
+
+  buildInputs = [
+    log4cpp
+    mpir
+    boost
+    gmp
+    icu
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+    python
+  ];
+
+  meta = with lib; {
+    description = "Gnuradio block for radio data system";
+    homepage = "https://github.com/bastibl/gr-rds";
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ mog ];
+  };
+}