about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/python-modules/pycookiecheat/default.nix66
-rw-r--r--pkgs/top-level/python-packages.nix2
2 files changed, 68 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/pycookiecheat/default.nix b/pkgs/development/python-modules/pycookiecheat/default.nix
new file mode 100644
index 0000000000000..a8898e4b627e2
--- /dev/null
+++ b/pkgs/development/python-modules/pycookiecheat/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, buildPythonPackage
+, cryptography
+, fetchFromGitHub
+, keyring
+, pytestCheckHook
+, pythonOlder
+, pythonRelaxDepsHook
+, playwright
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pycookiecheat";
+  version = "0.5.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "n8henrie";
+    repo = "pycookiecheat";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-3I7iw/dwF4lRqmVM3OR402InZCFoV9gzKpRQrx4F9KA=";
+  };
+
+  pythonRelaxDeps = [
+    "cryptography"
+    "keyring"
+  ];
+
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    cryptography
+    keyring
+  ];
+
+  nativeCheckInputs = [
+    playwright
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pycookiecheat"
+  ];
+
+  disabledTests = [
+    # Tests want to use playwright executable
+    "test_no_cookies"
+    "test_fake_cookie"
+  ];
+
+  meta = with lib; {
+    description = "Borrow cookies from your browser's authenticated session for use in Python scripts";
+    homepage = "https://github.com/n8henrie/pycookiecheat";
+    changelog = "https://github.com/n8henrie/pycookiecheat/blob/v${version}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 4ea87c0517488..ae473ed1315aa 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -7797,6 +7797,8 @@ self: super: with self; {
 
   pycontrol4 = callPackage ../development/python-modules/pycontrol4 { };
 
+  pycookiecheat = callPackage ../development/python-modules/pycookiecheat { };
+
   pycoolmasternet-async = callPackage ../development/python-modules/pycoolmasternet-async { };
 
   pyfibaro = callPackage ../development/python-modules/pyfibaro { };