diff --git a/nixos/modules/services/web-apps/openwebrx.nix b/nixos/modules/services/web-apps/openwebrx.nix index c530a07610f9..8a7972a3fc6e 100644 --- a/nixos/modules/services/web-apps/openwebrx.nix +++ b/nixos/modules/services/web-apps/openwebrx.nix @@ -20,6 +20,9 @@ in path = with pkgs; [ csdr digiham + codec2 + js8call + m17-cxx-demod alsaUtils netcat ]; diff --git a/pkgs/applications/radio/m17-cxx-demod/default.nix b/pkgs/applications/radio/m17-cxx-demod/default.nix new file mode 100644 index 000000000000..86c30686c706 --- /dev/null +++ b/pkgs/applications/radio/m17-cxx-demod/default.nix @@ -0,0 +1,24 @@ +{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, codec2 }: + +stdenv.mkDerivation rec { + pname = "m17-cxx-demod"; + version = "2.3"; + + src = fetchFromGitHub { + owner = "mobilinkd"; + repo = pname; + rev = "v${version}"; + hash = "sha256-mvppkFBmmPVqvlqIqrbwGrOBih5zS5sZrV/usEhHiws="; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ codec2 boost ]; + + meta = with lib; { + description = "M17 Demodulator in C++"; + homepage = "https://github.com/mobilinkd/m17-cxx-demod"; + license = licenses.gpl3Only; + platforms = platforms.unix; + maintainers = teams.c3d2.members; + }; +} diff --git a/pkgs/development/libraries/codec2/default.nix b/pkgs/development/libraries/codec2/default.nix index 7d271e16f240..e360279c6a44 100644 --- a/pkgs/development/libraries/codec2/default.nix +++ b/pkgs/development/libraries/codec2/default.nix @@ -13,6 +13,11 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ]; + # Install a binary that is used by openwebrx + postInstall = '' + install -Dm0755 src/freedv_rx -t $out/bin/ + ''; + # Swap keyword order to satisfy SWIG parser postFixup = '' sed -r -i 's/(\<_Complex)(\s+)(float|double)/\3\2\1/' $out/include/$pname/freedv_api.h diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5092e04fe974..39a87adb38ba 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4983,6 +4983,8 @@ with pkgs; inherit (gnome) gnome-common; }; + m17-cxx-demod = callPackage ../applications/radio/m17-cxx-demod { }; + m17n_db = callPackage ../tools/inputmethods/m17n-db { }; m17n_lib = callPackage ../tools/inputmethods/m17n-lib { };