anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / applications / radio / openwebrx / default.nix
bloba1d419bbd473095fa6b87646e08a1dd469027523
1 { stdenv, lib, buildPythonPackage, buildPythonApplication, fetchFromGitHub
2 , pkg-config, cmake, setuptools
3 , libsamplerate, fftwFloat
4 , rtl-sdr, soapysdr-with-plugins, csdr, pycsdr, pydigiham, direwolf, sox, wsjtx, codecserver
5 }:
7 let
9   js8py = buildPythonPackage rec {
10     pname = "js8py";
11     version = "0.1.1";
13     src = fetchFromGitHub {
14       owner = "jketterl";
15       repo = pname;
16       rev = version;
17       sha256 = "1j80zclg1cl5clqd00qqa16prz7cyc32bvxqz2mh540cirygq24w";
18     };
20     pythonImportsCheck = [ "js8py" "test" ];
22     meta = with lib; {
23       homepage = "https://github.com/jketterl/js8py";
24       description = "Library to decode the output of the js8 binary of JS8Call";
25       license = licenses.gpl3Only;
26       maintainers = teams.c3d2.members;
27     };
28   };
30   owrx_connector = stdenv.mkDerivation rec {
31     pname = "owrx_connector";
32     version = "0.6.0";
34     src = fetchFromGitHub {
35       owner = "jketterl";
36       repo = pname;
37       rev = version;
38       sha256 = "sha256-1H0TJ8QN3b6Lof5TWvyokhCeN+dN7ITwzRvEo2X8OWc=";
39     };
41     nativeBuildInputs = [
42       cmake
43       pkg-config
44     ];
46     buildInputs = [
47       libsamplerate fftwFloat
48       csdr
49       rtl-sdr
50       soapysdr-with-plugins
51     ];
53     meta = with lib; {
54       homepage = "https://github.com/jketterl/owrx_connector";
55       description = "Set of connectors that are used by OpenWebRX to interface with SDR hardware";
56       license = licenses.gpl3Only;
57       platforms = platforms.unix;
58       maintainers = teams.c3d2.members;
59     };
60   };
63 buildPythonApplication rec {
64   pname = "openwebrx";
65   version = "1.2.2";
67   src = fetchFromGitHub {
68     owner = "jketterl";
69     repo = pname;
70     rev = version;
71     hash = "sha256-i3Znp5Sxs/KtJazHh2v9/2P+3cEocWB5wIpF7E4pK9s=";
72   };
74   propagatedBuildInputs = [
75     setuptools
76     csdr
77     pycsdr
78     pydigiham
79     js8py
80     soapysdr-with-plugins
81     owrx_connector
82     direwolf
83     sox
84     wsjtx
85     codecserver
86   ];
88   pythonImportsCheck = [ "csdr" "owrx" "test" ];
90   passthru = {
91     inherit js8py owrx_connector;
92   };
94   meta = with lib; {
95     homepage = "https://github.com/jketterl/openwebrx";
96     description = "Simple DSP library and command-line tool for Software Defined Radio";
97     mainProgram = "openwebrx";
98     license = licenses.gpl3Only;
99     maintainers = teams.c3d2.members;
100   };