commit f50e19087c108464b1e29f88688a997e6ce3a4f4
parent 4b7bb53fb9cb93415876b440ef420c1db6ab4fb1
Author: Nikolay Korotkiy <sikmir@disroot.org>
Date: Sat, 24 Feb 2024 03:57:54 +0400
Add PyGPSClient
Diffstat:
7 files changed, 178 insertions(+), 0 deletions(-)
diff --git a/pkgs/default.nix b/pkgs/default.nix
@@ -266,6 +266,12 @@ lib.makeScope newScope (
gnsstk-apps = callPackage ./gnss/gnsstk-apps { };
gps-sdr-sim = callPackage ./gnss/gps-sdr-sim { };
gpsdate = callPackage ./gnss/gpsdate { };
+ pygnssutils = callPackage ./gnss/pygnssutils { };
+ pygpsclient = callPackage ./gnss/pygpsclient { };
+ pynmeagps = callPackage ./gnss/pynmeagps { };
+ pyrtcm = callPackage ./gnss/pyrtcm { };
+ pyspartn = callPackage ./gnss/pyspartn { };
+ pyubx2 = callPackage ./gnss/pyubx2 { };
rtklib = callPackage ./gnss/rtklib { };
rtklib-demo5 = callPackage ./gnss/rtklib/demo5.nix { };
visualgps = libsForQt5.callPackage ./gnss/visualgps { };
diff --git a/pkgs/gnss/pygnssutils/default.nix b/pkgs/gnss/pygnssutils/default.nix
@@ -0,0 +1,32 @@
+{ lib, fetchFromGitHub, python3Packages, pyspartn, pyubx2 }:
+
+python3Packages.buildPythonPackage rec {
+ pname = "pygnssutils";
+ version = "1.0.19";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "pygnssutils";
+ rev = "v${version}";
+ hash = "sha256-Wxy4vKNaudQ0l2j5HS1b6AZx2WtCLv6h+DcrGTAihIQ=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ propagatedBuildInputs = with python3Packages; [
+ paho-mqtt
+ pyserial
+ pyspartn
+ pyubx2
+ ];
+
+ pythonImportsCheck = [ "pygnssutils" ];
+
+ meta = with lib; {
+ description = "GNSS Command Line Utilities";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}
diff --git a/pkgs/gnss/pygpsclient/default.nix b/pkgs/gnss/pygpsclient/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchFromGitHub, python3Packages, pygnssutils }:
+
+python3Packages.buildPythonApplication rec {
+ pname = "pygpsclient";
+ version = "1.4.11";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "PyGPSClient";
+ rev = "v${version}";
+ hash = "sha256-AJG93dp3CBl6Udr0H6lpxA9dEhT7eDdGlI07Q3YzqT4=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ propagatedBuildInputs = with python3Packages; [
+ requests
+ pillow
+ pygnssutils
+ pyserial
+ tkinter
+ ];
+
+ meta = with lib; {
+ description = "GNSS Diagnostic and UBX Configuration GUI Application";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}
diff --git a/pkgs/gnss/pynmeagps/default.nix b/pkgs/gnss/pynmeagps/default.nix
@@ -0,0 +1,25 @@
+{ lib, fetchFromGitHub, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+ pname = "pynmeagps";
+ version = "1.0.33";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "pynmeagps";
+ rev = "v${version}";
+ hash = "sha256-94VS7f9DB42WAk6wg0qplJP8IbLcmljcx/YNm4/6f/k=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ pythonImportsCheck = [ "pynmeagps" ];
+
+ meta = with lib; {
+ description = "NMEA protocol parser and generator";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}
diff --git a/pkgs/gnss/pyrtcm/default.nix b/pkgs/gnss/pyrtcm/default.nix
@@ -0,0 +1,25 @@
+{ lib, fetchFromGitHub, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+ pname = "pyrtcm";
+ version = "1.0.15";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "pyrtcm";
+ rev = "v${version}";
+ hash = "sha256-+1PnM4A47zXpwmr7RvAKQxgSLOvNf1v+BGbf+eHA4h0=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ pythonImportsCheck = [ "pyrtcm" ];
+
+ meta = with lib; {
+ description = "RTCM3 protocol parser";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}
diff --git a/pkgs/gnss/pyspartn/default.nix b/pkgs/gnss/pyspartn/default.nix
@@ -0,0 +1,29 @@
+{ lib, fetchFromGitHub, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+ pname = "pyspartn";
+ version = "0.2.0-alpha";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "pyspartn";
+ rev = "v${version}";
+ hash = "sha256-Mz+P+FMLXowr0QTDqJR8pKd9VW8G07TvZ3d5slPOEDo=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ propagatedBuildInputs = with python3Packages; [
+ cryptography
+ ];
+
+ pythonImportsCheck = [ "pyspartn" ];
+
+ meta = with lib; {
+ description = "SPARTN protocol parser";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}
diff --git a/pkgs/gnss/pyubx2/default.nix b/pkgs/gnss/pyubx2/default.nix
@@ -0,0 +1,30 @@
+{ lib, fetchFromGitHub, python3Packages, pynmeagps, pyrtcm }:
+
+python3Packages.buildPythonPackage rec {
+ pname = "pyubx2";
+ version = "1.2.39";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "semuconsulting";
+ repo = "pyubx2";
+ rev = "v${version}";
+ hash = "sha256-qtfAW6KMJjITugPHxddVlwS9FeoUxIEQBwknR0hhZXE=";
+ };
+
+ nativeBuildInputs = with python3Packages; [ setuptools ];
+
+ propagatedBuildInputs = with python3Packages; [
+ pynmeagps
+ pyrtcm
+ ];
+
+ pythonImportsCheck = [ "pyubx2" ];
+
+ meta = with lib; {
+ description = "UBX protocol parser and generator";
+ inherit (src.meta) homepage;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.sikmir ];
+ };
+}