overlay/openwebrx: init

This commit is contained in:
Astro 2021-09-22 20:33:41 +02:00
parent 6e331bee7b
commit 35098479d1
3 changed files with 112 additions and 1 deletions

View File

@ -104,7 +104,7 @@
# TODO: check if the ethernet address is reachable and if not,
# execute wol on a machine in HQ.
in {
inherit (pkgs) bmxd;
inherit (pkgs) bmxd openwebrx;
list-upgradable = pkgs.writeScriptBin "list-upgradable" ''
#! ${pkgs.runtimeShell}

View File

@ -4,4 +4,6 @@ final: prev:
bmxd = prev.callPackage ./bmxd.nix { };
pile = prev.callPackage ./pile.nix { };
openwebrx = prev.python3Packages.callPackage ./openwebrx.nix { };
}

109
overlay/openwebrx.nix Normal file
View File

@ -0,0 +1,109 @@
{ stdenv, buildPythonPackage, buildPythonApplication, fetchFromGitHub
, autoreconfHook, pkg-config, fftw, libsamplerate
, cmake, rtl-sdr, soapysdr-with-plugins, alsa-lib
, setuptools
}:
let
csdr = stdenv.mkDerivation rec {
pname = "csdr";
version = "0.17.1";
src = fetchFromGitHub {
owner = "jketterl";
repo = pname;
rev = version;
sha256 = "1vip5a3xgskcwba3xi66zfr986xrsch9na7my818cm8vw345y57b";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
(fftw.overrideAttrs (oa: {
configureFlags = oa.configureFlags ++ [
"--enable-float"
];
}))
libsamplerate
];
};
js8py = buildPythonPackage rec {
pname = "js8py";
version = "0.1.1";
src = fetchFromGitHub {
owner = "jketterl";
repo = pname;
rev = version;
sha256 = "1j80zclg1cl5clqd00qqa16prz7cyc32bvxqz2mh540cirygq24w";
};
};
owrx_connector = stdenv.mkDerivation rec {
pname = "owrx_connector";
version = "0.5.0";
src = fetchFromGitHub {
owner = "jketterl";
repo = pname;
rev = version;
sha256 = "0gz4nf2frrkx1mpjfjpz2j919fkc99g5lxd8lhva3lgqyisvf4yj";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
rtl-sdr
soapysdr-with-plugins
];
};
direwolf = stdenv.mkDerivation rec {
pname = "direwolf";
version = "1.6";
src = fetchFromGitHub {
owner = "wb2osz";
repo = pname;
rev = version;
sha256 = "0xmz64m02knbrpasfij4rrq53ksxna5idxwgabcw4n2b1ig7pyx5";
};
patchPhase = ''
substituteInPlace conf/CMakeLists.txt \
--replace /etc/udev/ $out/etc/udev/
'';
nativeBuildInputs = [
cmake
];
buildInputs = [
alsa-lib
];
};
in
buildPythonApplication rec {
pname = "openwebrx";
version = "1.1.0";
src = fetchFromGitHub {
owner = "jketterl";
repo = pname;
rev = version;
sha256 = "0maxs07yx235xknvkbmhi2zds3vfkd66l6wz6kspz3jzl4c0v1f9";
};
propagatedBuildInputs = [
setuptools
csdr
js8py
soapysdr-with-plugins
owrx_connector
direwolf
];
}