summary refs log tree commit diff
diff options
context:
space:
mode:
authorMario Rodas <marsam@users.noreply.github.com>2023-09-21 06:51:29 -0500
committerGitHub <noreply@github.com>2023-09-21 06:51:29 -0500
commitc3bafdd1a8f72d4d54d27ff5d327f7d726f990ea (patch)
treedeb33c2cdf1b4a652b30e1e343fabbd7587a3e14
parentabf66d34a1942cd17477d94950476d5cf7d06a7f (diff)
parent62eb1578944f01e36264129b1d2342251f346787 (diff)
downloadnixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar.gz
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar.bz2
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar.lz
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar.xz
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.tar.zst
nixpkgs-c3bafdd1a8f72d4d54d27ff5d327f7d726f990ea.zip
Merge pull request #256362 from anthonyroussel/gns3_2_2_43
gns3-server,gns3-gui: 2.2.42 -> 2.2.43
-rw-r--r--pkgs/applications/networking/gns3/default.nix16
-rw-r--r--pkgs/applications/networking/gns3/gui.nix24
-rw-r--r--pkgs/applications/networking/gns3/server.nix36
3 files changed, 48 insertions, 28 deletions
diff --git a/pkgs/applications/networking/gns3/default.nix b/pkgs/applications/networking/gns3/default.nix
index 43aa6e7343a..bd1b74fe4a7 100644
--- a/pkgs/applications/networking/gns3/default.nix
+++ b/pkgs/applications/networking/gns3/default.nix
@@ -12,25 +12,25 @@ in {
 
   guiStable = mkGui {
     channel = "stable";
-    version = "2.2.42";
-    hash = "sha256-FW8Nuha+NrYVhR/66AiBpcCLHRhiLTW8KdHFyWSao84=";
+    version = "2.2.43";
+    hash = "sha256-+2dcyWnTJqGaH9yhknYc9/0gnj3qh80eAy6uxG7+fFM=";
   };
 
   guiPreview = mkGui {
     channel = "stable";
-    version = "2.2.42";
-    hash = "sha256-FW8Nuha+NrYVhR/66AiBpcCLHRhiLTW8KdHFyWSao84=";
+    version = "2.2.43";
+    hash = "sha256-+2dcyWnTJqGaH9yhknYc9/0gnj3qh80eAy6uxG7+fFM=";
   };
 
   serverStable = mkServer {
     channel = "stable";
-    version = "2.2.42";
-    hash = "sha256-YM07krEay2W+/6mKLAg+B7VEnAyDlkD+0+cSO1FAJzA=";
+    version = "2.2.43";
+    hash = "sha256-xWt2qzeqBtt86Wv3dYl4GXkfjr+7WAKn5HdDeUzOQd8=";
   };
 
   serverPreview = mkServer {
     channel = "stable";
-    version = "2.2.42";
-    hash = "sha256-YM07krEay2W+/6mKLAg+B7VEnAyDlkD+0+cSO1FAJzA=";
+    version = "2.2.43";
+    hash = "sha256-xWt2qzeqBtt86Wv3dYl4GXkfjr+7WAKn5HdDeUzOQd8=";
   };
 }
diff --git a/pkgs/applications/networking/gns3/gui.nix b/pkgs/applications/networking/gns3/gui.nix
index 13764d50669..a9537d99317 100644
--- a/pkgs/applications/networking/gns3/gui.nix
+++ b/pkgs/applications/networking/gns3/gui.nix
@@ -6,6 +6,7 @@
 { lib
 , python3
 , fetchFromGitHub
+, qt5
 , wrapQtAppsHook
 }:
 
@@ -21,7 +22,6 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = with python3.pkgs; [
-    pythonRelaxDepsHook
     wrapQtAppsHook
   ];
 
@@ -33,21 +33,29 @@ python3.pkgs.buildPythonApplication rec {
     setuptools
     sip_4 (pyqt5.override { withWebSockets = true; })
     truststore
+  ] ++ lib.optionals (pythonOlder "3.9") [
+    importlib-resources
   ];
 
-  pythonRelaxDeps = [
-    "jsonschema"
-    "sentry-sdk"
-  ];
-
-  doCheck = false; # Failing
-
   dontWrapQtApps = true;
 
   preFixup = ''
     wrapQtApp "$out/bin/gns3"
   '';
 
+  doCheck = true;
+
+  checkInputs = with python3.pkgs; [
+    pytestCheckHook
+  ];
+
+  preCheck = ''
+    export HOME=$(mktemp -d)
+    export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
+    export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins";
+    export QT_QPA_PLATFORM=offscreen
+  '';
+
   meta = with lib; {
     description = "Graphical Network Simulator 3 GUI (${channel} release)";
     longDescription = ''
diff --git a/pkgs/applications/networking/gns3/server.nix b/pkgs/applications/networking/gns3/server.nix
index 200153b15e0..48d48de83b2 100644
--- a/pkgs/applications/networking/gns3/server.nix
+++ b/pkgs/applications/networking/gns3/server.nix
@@ -7,6 +7,7 @@
 , python3
 , fetchFromGitHub
 , pkgsStatic
+, stdenv
 }:
 
 python3.pkgs.buildPythonApplication {
@@ -25,14 +26,6 @@ python3.pkgs.buildPythonApplication {
     cp ${pkgsStatic.busybox}/bin/busybox gns3server/compute/docker/resources/bin/busybox
   '';
 
-  nativeBuildInputs = with python3.pkgs; [
-    pythonRelaxDepsHook
-  ];
-
-  pythonRelaxDeps = [
-    "jsonschema"
-  ];
-
   propagatedBuildInputs = with python3.pkgs; [
     aiofiles
     aiohttp
@@ -43,6 +36,7 @@ python3.pkgs.buildPythonApplication {
     jinja2
     jsonschema
     multidict
+    platformdirs
     prompt-toolkit
     psutil
     py-cpuinfo
@@ -53,13 +47,31 @@ python3.pkgs.buildPythonApplication {
     zipstream
   ];
 
-  # Requires network access
-  doCheck = false;
+  postInstall = lib.optionalString (!stdenv.hostPlatform.isWindows) ''
+    rm $out/bin/gns3loopback
+  '';
+
+  doCheck = true;
 
-  postInstall = ''
-    rm $out/bin/gns3loopback # For Windows only
+  # Otherwise tests will fail to create directory
+  # Permission denied: '/homeless-shelter'
+  preCheck = ''
+    export HOME=$(mktemp -d)
   '';
 
+  checkInputs = with python3.pkgs; [
+    pytest-aiohttp
+    pytest-rerunfailures
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [
+    # fails on ofborg because of lack of cpu vendor information
+    "--deselect=tests/controller/gns3vm/test_virtualbox_gns3_vm.py::test_cpu_vendor_id"
+    # Rerun failed tests up to three times (flaky tests)
+    "--reruns 3"
+  ];
+
   meta = with lib; {
     description = "Graphical Network Simulator 3 server (${channel} release)";
     longDescription = ''