49 lines
1.5 KiB
Nix
49 lines
1.5 KiB
Nix
let
|
|
pkgs = import <nixpkgs> { };
|
|
pyqtgraph-qt5 = pkgs.python3Packages.buildPythonPackage rec {
|
|
name = "pyqtgraph_qt5-${version}";
|
|
version = "0.10.0";
|
|
doCheck = false;
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "pyqtgraph";
|
|
repo = "pyqtgraph";
|
|
rev = "1426e334e1d20542400d77c72c132b04c6d17ddb";
|
|
sha256 = "1079haxyr316jf0wpirxdj0ry6j8mr16cqr0dyyrd5cnxwl7zssh";
|
|
};
|
|
propagatedBuildInputs = with pkgs.python3Packages; [ scipy numpy pyqt5 pyopengl ];
|
|
};
|
|
bitstream = pkgs.fetchurl {
|
|
url = "https://www.nuand.com/fpga/v0.11.0/hostedxA4.rbf";
|
|
sha256 = "c172e35c4a92cf1e0ca3b37347a84d8376b275ece16cb9c5142b72b82b16fe8e";
|
|
};
|
|
sipyco = pkgs.python3Packages.buildPythonPackage rec {
|
|
name = "sipyco";
|
|
version = "1.1";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "m-labs";
|
|
repo = "sipyco";
|
|
rev = "v${version}";
|
|
sha256 = "09vyrzfhnbp65ybd7w2g96gvvnhzafpn72syls2kbg2paqjjf9gs";
|
|
};
|
|
propagatedBuildInputs = [ pkgs.python3Packages.numpy ];
|
|
};
|
|
in
|
|
pkgs.mkShell {
|
|
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
|
buildInputs = [
|
|
(pkgs.python3.withPackages(ps: [ps.soapysdr-with-plugins ps.scipy ps.pyserial ps.quamash ps.pyqt5 pyqtgraph-qt5 sipyco]))
|
|
pkgs.libbladeRF pkgs.gqrx
|
|
];
|
|
dontWrapQtApps = true;
|
|
postFixup = ''
|
|
wrapQtApp "$out/bin/python"
|
|
'';
|
|
shellHook = ''
|
|
cat > bladerf.conf << EOF
|
|
fpga ${bitstream}
|
|
biastee_rx on
|
|
EOF
|
|
'';
|
|
QT_QPA_PLATFORM = "wayland";
|
|
}
|