From 19c5f7bd7c31966d28dbd39182806d005845e4f4 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 9 Jun 2026 10:16:54 +0200 Subject: [PATCH 1/3] python3Packages.pybase62: init at 0.5.0 Module for base62 encoding https://github.com/suminb/base62 --- .../python-modules/pybase62/default.nix | 39 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 41 insertions(+) create mode 100644 pkgs/development/python-modules/pybase62/default.nix diff --git a/pkgs/development/python-modules/pybase62/default.nix b/pkgs/development/python-modules/pybase62/default.nix new file mode 100644 index 000000000000..eb0128481761 --- /dev/null +++ b/pkgs/development/python-modules/pybase62/default.nix @@ -0,0 +1,39 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + nix-update-script, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "pybase62"; + version = "0.5.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "suminb"; + repo = "base62"; + tag = finalAttrs.version; + hash = "sha256-/H16MT3mKCdXItoeOn1LWTHlgWmtwJdQHUaCp18eMz0="; + }; + + build-system = [ setuptools ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "base62" ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Module for base62 encoding"; + homepage = "https://github.com/suminb/base62"; + changelog = "https://github.com/suminb/base62/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd2WithViews; + maintainers = with lib.maintainers; [ fab ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9940f1ae2498..2cdd34dba034 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13617,6 +13617,8 @@ self: super: with self; { pybars3 = callPackage ../development/python-modules/pybars3 { }; + pybase62 = callPackage ../development/python-modules/pybase62 { }; + pybase64 = callPackage ../development/python-modules/pybase64 { }; pybbox = callPackage ../development/python-modules/pybbox { }; From 10460c59cba454e8ed05e6d96146018edb158598 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 9 Jun 2026 12:18:28 +0200 Subject: [PATCH 2/3] python3Packages.credsweeper: init at 1.16.0 Tool to detect credentials in any directories or files https://github.com/Samsung/CredSweeper --- pkgs/by-name/cr/credsweeper/package.nix | 1 + .../python-modules/credsweeper/default.nix | 107 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 110 insertions(+) create mode 100644 pkgs/by-name/cr/credsweeper/package.nix create mode 100644 pkgs/development/python-modules/credsweeper/default.nix diff --git a/pkgs/by-name/cr/credsweeper/package.nix b/pkgs/by-name/cr/credsweeper/package.nix new file mode 100644 index 000000000000..56fd0e14bb7b --- /dev/null +++ b/pkgs/by-name/cr/credsweeper/package.nix @@ -0,0 +1 @@ +{ python3Packages }: with python3Packages; toPythonApplication credsweeper diff --git a/pkgs/development/python-modules/credsweeper/default.nix b/pkgs/development/python-modules/credsweeper/default.nix new file mode 100644 index 000000000000..df3793d3da01 --- /dev/null +++ b/pkgs/development/python-modules/credsweeper/default.nix @@ -0,0 +1,107 @@ +{ + lib, + base58, + beautifulsoup4, + buildPythonPackage, + colorama, + cryptography, + deepdiff, + fetchFromGitHub, + gitpython, + hatchling, + humanfriendly, + hypothesis, + lxml, + nix-update-script, + numpy, + odfpy, + onnxruntime, + openpyxl, + pandas, + pdfminer-six, + pybase62, + pyjks, + pytestCheckHook, + python-dateutil, + python-docx, + python-pptx, + pyxlsb, + pyyaml, + rpmfile, + striprtf, + whatthepatch, + xlrd, +}: + +buildPythonPackage (finalAttrs: { + pname = "credsweeper"; + version = "1.16.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "Samsung"; + repo = "CredSweeper"; + tag = "v${finalAttrs.version}"; + hash = "sha256-DiIT7DzH6ut/Ax2qgga5vKjeXocROGbHdARLWJijejY="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + base58 + beautifulsoup4 + colorama + cryptography + gitpython + humanfriendly + lxml + numpy + odfpy + onnxruntime + openpyxl + pandas + pdfminer-six + pybase62 + pyjks + python-dateutil + python-docx + python-pptx + pyxlsb + pyyaml + rpmfile + striprtf + whatthepatch + xlrd + ]; + + nativeCheckInputs = [ + deepdiff + hypothesis + pytestCheckHook + ]; + + pythonImportsCheck = [ "credsweeper" ]; + + disabledTests = [ + # Probability tests + "test_data_p" + "test_depth_n" + "test_depth_p" + "test_match_n" + "test_multi_jobs_p" + "test_rules_ml_p" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Tool to detect credentials in any directories or files"; + homepage = "https://github.com/Samsung/CredSweeper"; + changelog = "https://github.com/Samsung/CredSweeper/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "credsweeper"; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2cdd34dba034..a0772cc3ad93 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3338,6 +3338,8 @@ self: super: with self; { credstash = callPackage ../development/python-modules/credstash { }; + credsweeper = callPackage ../development/python-modules/credsweeper { }; + crewai = callPackage ../development/python-modules/crewai { }; crispy-bootstrap3 = callPackage ../development/python-modules/crispy-bootstrap3 { }; From 490d1c83c940af710aa2c966e2e43654dae0414d Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 9 Jun 2026 12:26:30 +0200 Subject: [PATCH 3/3] adscan: init at 9.1.0 Active Directory pentesting tool for Linux https://github.com/ADScanPro/adscan --- pkgs/by-name/ad/adscan/package.nix | 80 ++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 pkgs/by-name/ad/adscan/package.nix diff --git a/pkgs/by-name/ad/adscan/package.nix b/pkgs/by-name/ad/adscan/package.nix new file mode 100644 index 000000000000..9de29420fe0e --- /dev/null +++ b/pkgs/by-name/ad/adscan/package.nix @@ -0,0 +1,80 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + nix-update-script, +}: + +python3Packages.buildPythonApplication (finalAttrs: { + pname = "adscan"; + version = "9.1.0"; + pyproject = true; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "ADScanPro"; + repo = "adscan"; + tag = "v${finalAttrs.version}"; + hash = "sha256-YsJFOJtf2rubfAXHWlu6c7ZLX8QE1KZFcFof56MsPVo="; + }; + + pythonRelaxDeps = [ "credsweeper" ]; + + build-system = with python3Packages; [ setuptools ]; + + dependencies = with python3Packages; [ + aardwolf + aiosmb + badldap + certifi + credsweeper + dnspython + graphviz + impacket + jinja2 + kerbad + markitdown + netifaces + packaging + playwright + posthog + prompt-toolkit + psutil + pydantic-ai-slim + pydantic-settings + pypsrp + pypykatz + python-docx + python-magic + questionary + redis + requests + rich + scapy + selenium + sentry-sdk + textual + weasyprint + winacl + ]; + + pythonImportsCheck = [ + "adscan_core" + "adscan_launcher" + ]; + + # Project has no tests + doCheck = false; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Active Directory pentesting tool for Linux"; + homepage = "https://github.com/ADScanPro/adscan"; + changelog = "https://github.com/ADScanPro/adscan/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.bsl11; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "adscan"; + }; +})