summary refs log tree commit diff
path: root/pkgs/applications/radio/minimodem/default.nix
blob: 55cd14cf70da97d41355c5cfcf45701f51934089 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{ stdenv, fetchFromGitHub, pkgconfig, autoconf, automake, libtool
, fftw, fftwSinglePrec, alsaLib, libsndfile, libpulseaudio
}:

stdenv.mkDerivation rec {
  version = "0.24-1";
  pname = "minimodem";

  src = fetchFromGitHub {
    owner = "kamalmostafa";
    repo = "minimodem";
    rev = "${pname}-${version}";
    sha256 = "1b5xy36fjcp7vkp115dpx4mlmqg2fc7xvxdy648fb8im953bw7ql";
  };

  nativeBuildInputs = [ pkgconfig autoconf automake libtool ];
  buildInputs = [ fftw fftwSinglePrec alsaLib libsndfile libpulseaudio ];

  preConfigure = ''
    aclocal \
    && autoheader \
    && automake --gnu --add-missing \
    && autoconf
  '';

  meta = {
    description = "General-purpose software audio FSK modem";
    longDescription = ''
    Minimodem is a command-line program which decodes (or generates) audio
    modem tones at any specified baud rate, using various framing protocols. It
    acts a general-purpose software FSK modem, and includes support for various
    standard FSK protocols such as Bell103, Bell202, RTTY, NOAA SAME, and
    Caller-ID.
    '';
    homepage = http://www.whence.com/minimodem/;
    license = stdenv.lib.licenses.gpl3Plus;
    platforms = with stdenv.lib.platforms; linux;
    maintainers = with stdenv.lib.maintainers; [ relrod ];
  };
}