about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2023-04-24 21:38:32 +0200
committerGitHub <noreply@github.com>2023-04-24 21:38:32 +0200
commit69d622beb38a52f321df23556800ff6d45e39dbf (patch)
treea1328c2a8c4f842139353e03ae3c475a0a27a518
parent884ac294018409e0d1adc0cae185439a44bd6b0b (diff)
parent106fdb05d9d95370b4b8227eaac18c3816c67503 (diff)
Merge pull request #225888 from pallix/add-gp-saml-gui
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--pkgs/tools/networking/gp-saml-gui/default.nix46
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 54 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 83484c97d896f..f190c7086bb76 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -11807,6 +11807,12 @@
     githubId = 11016164;
     name = "Fedor Pakhomov";
   };
+  pallix = {
+    email = "pierre.allix.work@gmail.com";
+    github = "pallix";
+    githubId = 676838;
+    name = "Pierre Allix";
+  };
   paluh = {
     email = "paluho@gmail.com";
     github = "paluh";
diff --git a/pkgs/tools/networking/gp-saml-gui/default.nix b/pkgs/tools/networking/gp-saml-gui/default.nix
new file mode 100644
index 0000000000000..3e343b3715d32
--- /dev/null
+++ b/pkgs/tools/networking/gp-saml-gui/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, buildPythonPackage
+, webkitgtk
+, wrapGAppsHook
+, glib-networking
+, gobject-introspection
+, openconnect
+, pygobject3
+, requests
+}:
+buildPythonPackage rec {
+  pname = "gp-saml-gui";
+  version = "0.1";
+
+  src = fetchFromGitHub {
+    owner = "dlenski";
+    repo = "gp-saml-gui";
+    rev = "085d3276e17e1094e22e5d49545e273147598eb4";
+    sha256 = "sha256-5vIfgDaHE3T+euLliEyXe+Xikf5VyW3b9C2GapWx278=";
+  };
+
+  buildInputs = lib.optional stdenv.isLinux glib-networking;
+
+  nativeBuildInputs = [ wrapGAppsHook gobject-introspection glib-networking ];
+
+  propagatedBuildInputs = [
+    requests
+    pygobject3
+    openconnect
+  ] ++ lib.optional stdenv.isLinux webkitgtk;
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --set WEBKIT_DISABLE_COMPOSITING_MODE "1"
+    )
+  '';
+
+  meta = with lib; {
+    description = "Interactively authenticate to GlobalProtect VPNs that require SAML";
+    homepage = "https://github.com/dlenski/gp-saml-gui";
+    license = licenses.gpl3Only;
+    maintainers = [ maintainers.pallix ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ad8b38b84f1bb..a709b6877de69 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1544,6 +1544,8 @@ with pkgs;
 
   godspeed = callPackage ../tools/networking/godspeed { };
 
+  gp-saml-gui = python3Packages.callPackage ../tools/networking/gp-saml-gui { };
+
   guestfs-tools = callPackage ../tools/virtualization/guestfs-tools { };
 
   fabs = callPackage ../tools/backup/fabs { };