1{
2 lib,
3 stdenv,
4 fetchgit,
5 asciidoc,
6 asciidoctor,
7 cmake,
8 pkg-config,
9 fftw,
10 fftwFloat,
11 gfortran,
12 hamlib_4,
13 libtool,
14 libusb1,
15 qtbase,
16 qtmultimedia,
17 qtserialport,
18 qttools,
19 boost,
20 texinfo,
21 wrapQtAppsHook,
22}:
23
24stdenv.mkDerivation rec {
25 pname = "wsjtx";
26 version = "2.7.0";
27
28 src = fetchgit {
29 url = "http://git.code.sf.net/p/wsjt/wsjtx";
30 rev = "wsjtx-${version}";
31 hash = "sha256-AAPZTJUhz3x/28B9rk2uwFs1bkcEvaj+hOzAjpsFALQ=";
32 };
33
34 nativeBuildInputs = [
35 asciidoc
36 asciidoctor
37 cmake
38 gfortran
39 hamlib_4 # rigctl
40 libtool
41 pkg-config
42 qttools
43 texinfo
44 wrapQtAppsHook
45 ];
46 buildInputs = [
47 fftw
48 fftwFloat
49 hamlib_4
50 libusb1
51 qtbase
52 qtmultimedia
53 qtserialport
54 boost
55 ];
56
57 strictDeps = true;
58
59 meta = with lib; {
60 description = "Weak-signal digital communication modes for amateur radio";
61 longDescription = ''
62 WSJT-X implements communication protocols or "modes" called FT4, FT8, JT4,
63 JT9, JT65, QRA64, ISCAT, MSK144, and WSPR, as well as one called Echo for
64 detecting and measuring your own radio signals reflected from the Moon.
65 These modes were all designed for making reliable, confirmed ham radio
66 contacts under extreme weak-signal conditions.
67 '';
68 homepage = "https://wsjt.sourceforge.io";
69 license = with licenses; [ gpl3Plus ];
70 platforms = platforms.linux;
71 maintainers = with maintainers; [
72 lasandell
73 numinit
74 melling
75 ];
76 };
77}