diff options
author | Sandro <sandro.jaeckel@gmail.com> | 2021-01-06 21:31:30 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-06 21:31:30 +0100 |
commit | d0b8b87220599ffcadebdb6e5fc6ab27346d4b88 (patch) | |
tree | 075fe03b052dc7026a7e80c65074c47a1a2ea369 /pkgs | |
parent | 7cd9d714ee019bc8aed04147e5a0d3c188837c4f (diff) | |
parent | 5aef5317f9abb0fe4ab7290633f2f9d5817b1bbe (diff) |
Merge pull request #108570 from ymarkus/soundmodem
soundmodem: init at 0.20
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/applications/radio/soundmodem/default.nix | 36 | ||||
-rw-r--r-- | pkgs/applications/radio/soundmodem/matFix.patch | 11 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
3 files changed, 49 insertions, 0 deletions
diff --git a/pkgs/applications/radio/soundmodem/default.nix b/pkgs/applications/radio/soundmodem/default.nix new file mode 100644 index 0000000000000..d7410f9280943 --- /dev/null +++ b/pkgs/applications/radio/soundmodem/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, pkg-config, alsaLib, audiofile, gtk2, libxml2 }: + +stdenv.mkDerivation rec { + name = "soundmodem"; + version = "0.20"; + + src = fetchurl { + url = "https://archive.org/download/${name}-${version}/${name}-${version}.tar.gz"; + sha256 = "156l3wjnh5rcisxb42kcmlf74swf679v4xnj09zy5j74rd4h721z"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ alsaLib audiofile gtk2 libxml2 ]; + + patches = [ ./matFix.patch ]; + + doCheck = true; + + meta = with stdenv.lib; { + description = "Audio based modem for ham radio supporting ax.25"; + longDescription = '' + This software allows a standard PC soundcard to be used as a packet radio "modem". The whole processing is done on the main processor CPU. + Unlike previous packet radio modem software, this new release offers several new benefits: + - Now uses standard operating system sound drivers (OSS/Free under Linux, /dev/audio under Solaris and DirectSound under Windows), thus runs on all soundcards for which drivers for the desired operating system are available. + - No fixed relationship between bitrate, sampling rate, and modem parameters. Modems may be parametrized, and multiple modems may even run on the same audio channel! + - Usermode solution allows the use of MMX, VIS, Floating point and other media instruction sets to speed up computation. + - Cross platform builds from a single source code provides ubiquitous availability. + ''; + #homepage = "http://gna.org/projects/soundmodem"; # official, but "Connection refused" + homepage = "http://soundmodem.vk4msl.id.au/"; + downloadPage = "https://archive.org/download/${name}-${version}/${name}-${version}.tar.gz"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ ymarkus ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/applications/radio/soundmodem/matFix.patch b/pkgs/applications/radio/soundmodem/matFix.patch new file mode 100644 index 0000000000000..55436cda3d414 --- /dev/null +++ b/pkgs/applications/radio/soundmodem/matFix.patch @@ -0,0 +1,11 @@ +--- a/matlib/mat.hh 2003-01-06 23:47:26.000000000 +0100 ++++ b/matlib/mat.copy.hh 2021-01-06 10:05:34.332415179 +0100 +@@ -91,7 +91,7 @@ + memcpy(c, r, d1 * d3 * sizeof(c[0])); + } + +-template<typename T> void mdet(const T *c, unsigned int d) ++template<typename T> int mdet(const T *c, unsigned int d) + { + T *c2; + unsigned int i, j, k, l; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1796f04f308d6..71fb4bd60999e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -28667,6 +28667,8 @@ in snscrape = with python3Packages; toPythonApplication snscrape; + soundmodem = callPackage ../applications/radio/soundmodem {}; + soundOfSorting = callPackage ../misc/sound-of-sorting { }; sourceAndTags = callPackage ../misc/source-and-tags { |