1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 cmake,
6 pkg-config,
7 hamlib,
8 rtaudio,
9 alsa-lib,
10 libpulseaudio,
11 libjack2,
12 libusb1,
13 soapysdr,
14}:
15
16stdenv.mkDerivation rec {
17 pname = "soapyaudio";
18 version = "0.1.1";
19
20 src = fetchFromGitHub {
21 owner = "pothosware";
22 repo = "SoapyAudio";
23 rev = "soapy-audio-${version}";
24 sha256 = "0minlsc1lvmqm20vn5hb4im7pz8qwklfy7sbr2xr73xkrbqdahc0";
25 };
26
27 nativeBuildInputs = [
28 cmake
29 pkg-config
30 ];
31 buildInputs = [
32 hamlib
33 rtaudio
34 libjack2
35 libusb1
36 soapysdr
37 ]
38 ++ lib.optionals stdenv.hostPlatform.isLinux [
39 alsa-lib
40 libpulseaudio
41 ];
42
43 cmakeFlags = [
44 "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/"
45 "-DUSE_HAMLIB=ON"
46 ];
47
48 meta = with lib; {
49 homepage = "https://github.com/pothosware/SoapyAudio";
50 description = "SoapySDR plugin for amateur radio and audio devices";
51 license = licenses.mit;
52 maintainers = with maintainers; [ numinit ];
53 platforms = platforms.unix;
54 };
55}