biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / applications / science / electronics / nanovna-saver / default.nix
blob1f483034d2b197974df7b8f04b910e480eff9501
2   lib,
3   stdenv,
4   python3,
5   fetchFromGitHub,
6   qt6,
7 }:
8 python3.pkgs.buildPythonApplication rec {
9   pname = "nanovna-saver";
10   version = "0.6.4";
12   src = fetchFromGitHub {
13     owner = "NanoVNA-Saver";
14     repo = pname;
15     rev = "refs/tags/v${version}";
16     sha256 = "sha256-fAVsjknhLhsrGdHu2Q6JWLoFoxZoc+wDCNja+ySCsR4=";
17   };
19   nativeBuildInputs = [
20     qt6.wrapQtAppsHook
21     qt6.qtbase
22   ];
24   buildInputs = lib.optional stdenv.hostPlatform.isLinux qt6.qtwayland;
26   propagatedBuildInputs = with python3.pkgs; [
27     cython
28     scipy
29     pyqt6
30     pyserial
31     numpy
32     setuptools
33     setuptools-scm
34   ];
36   doCheck = false;
38   dontWrapGApps = true;
39   dontWrapQtApps = true;
41   preFixup = ''
42     makeWrapperArgs+=(
43       "''${gappsWrapperArgs[@]}"
44       "''${qtWrapperArgs[@]}"
45     )
46   '';
48   meta = with lib; {
49     homepage = "https://github.com/NanoVNA-Saver/nanovna-saver";
50     description =
51       "A tool for reading, displaying and saving data from the NanoVNA";
52     mainProgram = "NanoVNASaver";
53     longDescription = ''
54       A multiplatform tool to save Touchstone files from the NanoVNA, sweep
55       frequency spans in segments to gain more than 101 data points, and
56       generally display and analyze the resulting data.
57     '';
58     license = licenses.gpl3Only;
59     maintainers = with maintainers; [ zaninime tmarkus ];
60   };