1{ lib
2, buildPythonPackage
3, fetchPypi
4, fetchpatch
5, rtl-sdr
6, m2r
7}:
8
9buildPythonPackage rec {
10 pname = "pyrtlsdr";
11 version = "0.2.7";
12
13 src = fetchPypi {
14 inherit pname version;
15 sha256 = "7942fe2e7821d09206002ea7e820e694094b3f964885123eb6eee1167f39b8da";
16 };
17
18 # Replace pypandoc dependency by m2r
19 # See https://github.com/roger-/pyrtlsdr/pull/78
20 patches = [
21 (fetchpatch {
22 url = "${meta.homepage}/commit/2b7df0b.patch";
23 sha256 = "04h5z80969jgdgrf98b9ps56sybms09xacvmj6rwcfrmanli8rgf";
24 })
25 (fetchpatch {
26 url = "${meta.homepage}/commit/97dc3d0.patch";
27 sha256 = "1v1j0n91jwpsiam2j34yj71z4h39cvk4gi4565zgjrzsq6xr93i0";
28 })
29 ];
30
31 nativeBuildInputs = [ m2r ];
32
33 postPatch = ''
34 sed "s|driver_files =.*|driver_files = ['${rtl-sdr}/lib/librtlsdr.so']|" -i rtlsdr/librtlsdr.py
35 '';
36
37 # No tests that can be used.
38 doCheck = false;
39
40 meta = with lib; {
41 description = "Python wrapper for librtlsdr (a driver for Realtek RTL2832U based SDR's)";
42 homepage = "https://github.com/roger-/pyrtlsdr";
43 license = licenses.gpl3;
44 platforms = platforms.unix;
45 maintainers = with maintainers; [ bjornfor ];
46 };
47}