nixpkgs/pkgs/applications/radio/wsjtx/default.nix

42 lines
1.7 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchurl, asciidoc, asciidoctor, autoconf, automake, cmake,
2019-08-10 23:54:55 +00:00
docbook_xsl, fftw, fftwFloat, gfortran, libtool, libusb1, qtbase,
2021-04-25 23:41:30 +00:00
qtmultimedia, qtserialport, qttools, boost, texinfo, wrapQtAppsHook }:
2018-02-17 11:06:27 +00:00
stdenv.mkDerivation rec {
pname = "wsjtx";
2021-11-23 16:17:49 +00:00
version = "2.5.2";
2018-02-17 11:06:27 +00:00
# This is a "superbuild" tarball containing both wsjtx and a hamlib fork
2018-02-17 11:06:27 +00:00
src = fetchurl {
url = "http://physics.princeton.edu/pulsar/k1jt/wsjtx-${version}.tgz";
2021-11-23 16:17:49 +00:00
sha256 = "sha256-4KSJYhfUya8nH1KTsZ7JRgh0KnKdqrgSfofsjWaX7/M=";
2018-02-17 11:06:27 +00:00
};
# Hamlib builds with autotools, wsjtx builds with cmake
# Omitting pkg-config because it causes issues locating the built hamlib
2018-02-17 11:06:27 +00:00
nativeBuildInputs = [
asciidoc asciidoctor autoconf automake cmake docbook_xsl gfortran libtool
qttools texinfo wrapQtAppsHook
2018-02-17 11:06:27 +00:00
];
2021-04-25 23:41:30 +00:00
buildInputs = [ fftw fftwFloat libusb1 qtbase qtmultimedia qtserialport boost ];
2018-02-17 11:06:27 +00:00
# Remove Git dependency from superbuild since sources are included
patches = [ ./super.patch ];
meta = with lib; {
2018-02-17 11:06:27 +00:00
description = "Weak-signal digital communication modes for amateur radio";
longDescription = ''
2019-08-10 23:54:55 +00:00
WSJT-X implements communication protocols or "modes" called FT4, FT8, JT4,
JT9, JT65, QRA64, ISCAT, MSK144, and WSPR, as well as one called Echo for
2018-02-17 11:06:27 +00:00
detecting and measuring your own radio signals reflected from the Moon.
These modes were all designed for making reliable, confirmed ham radio
contacts under extreme weak-signal conditions.
'';
homepage = "https://physics.princeton.edu/pulsar/k1jt/wsjtx.html";
2018-02-17 11:06:27 +00:00
# Older licenses are for the statically-linked hamlib
license = with licenses; [ gpl3Plus gpl2Plus lgpl21Plus ];
platforms = platforms.linux;
2021-04-25 23:41:30 +00:00
maintainers = with maintainers; [ lasandell numinit ];
2018-02-17 11:06:27 +00:00
};
}