diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 1e493e01edd9..d76df1c0daa5 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7616,6 +7616,11 @@ githubId = 54573; name = "Edward Amsden"; }; + eana = { + github = "eana"; + githubId = 18534280; + name = "Jonas Eana"; + }; earldouglas = { email = "james@earldouglas.com"; github = "earldouglas"; diff --git a/pkgs/by-name/em/embedxpl/package.nix b/pkgs/by-name/em/embedxpl/package.nix new file mode 100644 index 000000000000..f01cb4bd46fe --- /dev/null +++ b/pkgs/by-name/em/embedxpl/package.nix @@ -0,0 +1,75 @@ +{ + lib, + python3, + fetchFromGitHub, +}: + +python3.pkgs.buildPythonApplication (finalAttrs: { + pname = "embedxpl"; + version = "3.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mrhenrike"; + repo = "EmbedXPL-Forge"; + tag = "v${finalAttrs.version}"; + hash = "sha256-C7BTFRvhIjUePXxVmUbZXN2EKi+D/nE220/6ms30yAs="; + }; + + __structuredAttrs = true; + + build-system = with python3.pkgs; [ setuptools ]; + + dependencies = with python3.pkgs; [ + aiohttp + colorama + paramiko + psutil + pycryptodome + pysnmp + python-nmap + requests + rich + scapy + telnetlib3 + ]; + + optional-dependencies = with python3.pkgs; { + all = [ + numpy + pymodbus + python-can + python-nmap + scikit-learn + ]; + at = [ python-can ]; + hvac = [ pymodbus ]; + iiot = [ pymodbus ]; + ml = [ + numpy + scikit-learn + ]; + ml-gpu = [ + numpy + torch + ]; + nse = [ python-nmap ]; + ot = [ pymodbus ]; + specialized = [ python-can ]; + vehicles = [ python-can ]; + }; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "embedxpl" ]; + + meta = { + description = "Embedded Device Security Assessment Framework"; + homepage = "https://github.com/mrhenrike/EmbedXPL-Forge"; + changelog = "https://github.com/mrhenrike/EmbedXPL-Forge/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "exf"; + }; +}) diff --git a/pkgs/by-name/gd/gdb/package.nix b/pkgs/by-name/gd/gdb/package.nix index fdc6c275d733..95769211d8c2 100644 --- a/pkgs/by-name/gd/gdb/package.nix +++ b/pkgs/by-name/gd/gdb/package.nix @@ -231,7 +231,7 @@ stdenv.mkDerivation (finalAttrs: { meta = { description = "GNU Project debugger"; - mainProgram = "gdb"; + mainProgram = "${targetPrefix}gdb"; longDescription = '' GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another diff --git a/pkgs/by-name/go/gotty/package.nix b/pkgs/by-name/go/gotty/package.nix index c4c91ab9e449..999a5acbbf4b 100644 --- a/pkgs/by-name/go/gotty/package.nix +++ b/pkgs/by-name/go/gotty/package.nix @@ -6,13 +6,13 @@ buildGoModule (finalAttrs: { pname = "gotty"; - version = "1.7.1"; + version = "1.7.2"; src = fetchFromGitHub { owner = "sorenisanerd"; repo = "gotty"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-zTdV6l7rrOY8oPwpSIfYC9rgwbdvSe2dsQYHvhnIq/Q="; + sha256 = "sha256-zdVwK/+vJmPAgvgQZB63t1M7DbaCvgln7m95u98D9ds="; }; vendorHash = "sha256-MvNCq1kWhfVJz4h6G0yAwJd8Z4xRtcu2WjeEhoTW5L8="; diff --git a/pkgs/by-name/kl/kloak/package.nix b/pkgs/by-name/kl/kloak/package.nix index d58fe93ae80a..077ec4a476a1 100644 --- a/pkgs/by-name/kl/kloak/package.nix +++ b/pkgs/by-name/kl/kloak/package.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "kloak"; - version = "0.8.0-1"; + version = "0.8.3-1"; src = fetchFromGitHub { owner = "Whonix"; repo = "kloak"; tag = finalAttrs.version; - hash = "sha256-lOJLOkswGW5xvFxb9gKQBV3+UMh9/m1nGvH5oKLBkwE="; + hash = "sha256-s+ZntlsEuS9Wv8govXtgyBfHwruTvZJzQP++eR6z9V0="; }; strictDeps = true; diff --git a/pkgs/by-name/pi/pipeline/package.nix b/pkgs/by-name/pi/pipeline/package.nix index a09ef1f3ff0f..15510de413f6 100644 --- a/pkgs/by-name/pi/pipeline/package.nix +++ b/pkgs/by-name/pi/pipeline/package.nix @@ -32,18 +32,18 @@ stdenv.mkDerivation (finalAttrs: { pname = "pipeline"; - version = "4.0.2"; + version = "4.0.3"; src = fetchFromGitLab { owner = "schmiddi-on-mobile"; repo = "pipeline"; tag = finalAttrs.version; - hash = "sha256-JdAixbzq6cpnT5bxBxm1tnFnH9hhgSzULm+0hiH6bnw="; + hash = "sha256-sSs3fr95oERsswPGZxbCyTLZnur89DMIdtbZjY1+vGE="; }; cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) src pname version; - hash = "sha256-7DNhJ1qNP0uUrPXRc3BCWHst2uX4KqMbVWRqAfK0kzE="; + hash = "sha256-HpFxhApmRSIVzR5ON1rF4P5gODAa538p14MaipxeS3Y="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/th/theharvester/package.nix b/pkgs/by-name/th/theharvester/package.nix index c4809666f9c1..a692c3770690 100644 --- a/pkgs/by-name/th/theharvester/package.nix +++ b/pkgs/by-name/th/theharvester/package.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "theharvester"; - version = "4.10.1"; + version = "4.11.0"; pyproject = true; src = fetchFromGitHub { owner = "laramies"; repo = "theharvester"; tag = finalAttrs.version; - hash = "sha256-ajXGf8wH8WoVGNHDAUJ+fC3FN2OtUuKaIrXJ4KuRif0="; + hash = "sha256-BA3YDnd4Wdzwe32dVuazEA9gcFthTBa7ao6jjata5/I="; }; pythonRelaxDeps = true; diff --git a/pkgs/by-name/tu/tutanota-desktop/package.nix b/pkgs/by-name/tu/tutanota-desktop/package.nix index f0088c68dabe..96ede5f7493e 100644 --- a/pkgs/by-name/tu/tutanota-desktop/package.nix +++ b/pkgs/by-name/tu/tutanota-desktop/package.nix @@ -8,11 +8,11 @@ appimageTools.wrapType2 rec { pname = "tutanota-desktop"; - version = "348.260506.0"; + version = "348.260519.0"; src = fetchurl { url = "https://github.com/tutao/tutanota/releases/download/tutanota-desktop-release-${version}/tutanota-desktop-linux.AppImage"; - hash = "sha256-SzhC2ZF60SfXugpb4RGHV26jtXRqquznzvgr/h8iUyc="; + hash = "sha256-SqD6pErUUeq/m0IdhL4EVyYINmyIME6pucGH3sAUL5g="; }; extraPkgs = pkgs: [ pkgs.libsecret ]; diff --git a/pkgs/by-name/vu/vuls/package.nix b/pkgs/by-name/vu/vuls/package.nix index 7adb085d543e..507becfe979c 100644 --- a/pkgs/by-name/vu/vuls/package.nix +++ b/pkgs/by-name/vu/vuls/package.nix @@ -6,13 +6,13 @@ buildGoModule (finalAttrs: { pname = "vuls"; - version = "0.39.1"; + version = "0.39.2"; src = fetchFromGitHub { owner = "future-architect"; repo = "vuls"; tag = "v${finalAttrs.version}"; - hash = "sha256-SaQLxWhRgA/RDvfLp4r8r98CQEog5Uwh7WjnQC+Fj+k="; + hash = "sha256-S3YNBsrvtiTEpJ+jo5lOMMKhRH/eo626aeGr7bqSUh0="; fetchSubmodules = true; }; diff --git a/pkgs/development/python-modules/avea/default.nix b/pkgs/development/python-modules/avea/default.nix index 5e0b8d9694d7..871dcb1d382f 100644 --- a/pkgs/development/python-modules/avea/default.nix +++ b/pkgs/development/python-modules/avea/default.nix @@ -9,14 +9,14 @@ buildPythonPackage (finalAttrs: { pname = "avea"; - version = "1.7.0"; + version = "1.8.0"; pyproject = true; src = fetchFromGitHub { owner = "k0rventen"; repo = "avea"; tag = "v${finalAttrs.version}"; - hash = "sha256-cBYS8Q70K5MXZ63uI6OGkUsskJ7rkgTBPjlAsxmtmVA="; + hash = "sha256-8jDKsEqYDUuB9L2M3da+6xvp6pP7TRHcZwy8w/fOesk="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/claude-agent-sdk/default.nix b/pkgs/development/python-modules/claude-agent-sdk/default.nix index 3531b60d42c1..3ca19d6aa6c8 100644 --- a/pkgs/development/python-modules/claude-agent-sdk/default.nix +++ b/pkgs/development/python-modules/claude-agent-sdk/default.nix @@ -13,14 +13,14 @@ buildPythonPackage (finalAttrs: { pname = "claude-agent-sdk"; - version = "0.2.82"; + version = "0.2.87"; pyproject = true; src = fetchFromGitHub { owner = "anthropics"; repo = "claude-agent-sdk-python"; tag = "v${finalAttrs.version}"; - hash = "sha256-mv04UsKb8hPNFYhOCQcgav9FxwKNswWpX/TkiGcqEHI="; + hash = "sha256-dHmiWCGMb0lrP9yCMXpm7/LrM3VVNiSd+W/mmrrYVfc="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/cyclopts/default.nix b/pkgs/development/python-modules/cyclopts/default.nix index 42416fd3cf88..2a076628e538 100644 --- a/pkgs/development/python-modules/cyclopts/default.nix +++ b/pkgs/development/python-modules/cyclopts/default.nix @@ -1,35 +1,41 @@ { lib, + stdenv, attrs, buildPythonPackage, docstring-parser, fetchFromGitHub, + bash, + fish, hatch-vcs, hatchling, markdown, mkdocs, + pexpect, pydantic, pymdown-extensions, + pytest-cov-stub, pytest-mock, pytestCheckHook, pyyaml, - rich-rst, rich, + rich-rst, sphinx, syrupy, trio, + zsh, }: buildPythonPackage (finalAttrs: { pname = "cyclopts"; - version = "4.10.2"; + version = "4.16.0"; pyproject = true; src = fetchFromGitHub { owner = "BrianPugh"; repo = "cyclopts"; tag = "v${finalAttrs.version}"; - hash = "sha256-vlsjhBfI08QMQ8FzM+BogAXbukHhnr4aD8ZmZVicCv0="; + hash = "sha256-tDDYVqhjvTRQ0rTvib4ek49zEnEefkKoq1t/3C/PRlQ="; }; build-system = [ @@ -47,7 +53,6 @@ buildPythonPackage (finalAttrs: { optional-dependencies = { trio = [ trio ]; yaml = [ pyyaml ]; - docs = [ sphinx ]; mkdocs = [ mkdocs markdown @@ -56,32 +61,45 @@ buildPythonPackage (finalAttrs: { }; nativeCheckInputs = [ + pexpect pydantic + pytest-cov-stub pytest-mock pytestCheckHook syrupy + + # integrations + sphinx + bash + fish + zsh ] ++ lib.flatten (builtins.attrValues finalAttrs.passthru.optional-dependencies); pythonImportsCheck = [ "cyclopts" ]; disabledTests = [ - # Test requires bash - "test_positional_not_treated_as_command" # Building docs "build_succeeds" - ]; - - disabledTestPaths = [ - # Tests requires sphinx - "tests/test_sphinx_ext.py" - ]; + # https://github.com/BrianPugh/cyclopts/issues/820 + "test_behavior[fish-literal-positional]" + "test_behavior[fish-multi-positional-second]" + "test_behavior[fish-equals-form-option-value]" + "test_behavior[fish-multi-positional-third]" + ] + # https://github.com/BrianPugh/cyclopts/issues/821 + ++ lib.lists.optional ( + stdenv.hostPlatform.system == "aarch64-linux" + ) "test_collection_option_repeats"; meta = { description = "Module to create CLIs based on Python type hints"; homepage = "https://github.com/BrianPugh/cyclopts"; changelog = "https://github.com/BrianPugh/cyclopts/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ fab ]; + maintainers = with lib.maintainers; [ + fab + PerchunPak + ]; }; }) diff --git a/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix b/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix index 1fcc67e06dd0..48876c158654 100644 --- a/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix +++ b/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix @@ -14,14 +14,14 @@ buildPythonPackage (finalAttrs: { pname = "magic-wormhole-mailbox-server"; - version = "0.7.0"; + version = "0.8.0"; pyproject = true; src = fetchFromGitHub { owner = "magic-wormhole"; repo = "magic-wormhole-mailbox-server"; tag = finalAttrs.version; - hash = "sha256-OkmYm/pehd4NlkIoqGzKaTBXkpFRwbiMHeZNezd8NvU="; + hash = "sha256-P1Pyz4uOoFeTc7Fd8DxeHW/Cig8i2QS3wh6vOSzaDKg="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/reolink-aio/default.nix b/pkgs/development/python-modules/reolink-aio/default.nix index d5c01611f5a8..53faaa3fb636 100644 --- a/pkgs/development/python-modules/reolink-aio/default.nix +++ b/pkgs/development/python-modules/reolink-aio/default.nix @@ -12,14 +12,14 @@ buildPythonPackage (finalAttrs: { pname = "reolink-aio"; - version = "0.19.1"; + version = "0.20.0"; pyproject = true; src = fetchFromGitHub { owner = "starkillerOG"; repo = "reolink_aio"; tag = finalAttrs.version; - hash = "sha256-sHQ6lReLg2QnnTwjcPUulvVPsJDEzjoMFnBz6Ubdlq8="; + hash = "sha256-7ffF/BJTHcQQPM8c8bGDUCt2lWLA+ArIoJiOcpHIHi4="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/resend/default.nix b/pkgs/development/python-modules/resend/default.nix index 69803e4da67a..248ed6a75367 100644 --- a/pkgs/development/python-modules/resend/default.nix +++ b/pkgs/development/python-modules/resend/default.nix @@ -3,21 +3,22 @@ buildPythonPackage, fetchFromGitHub, setuptools, + pytest-asyncio, pytestCheckHook, requests, typing-extensions, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "resend"; - version = "2.23.0"; + version = "2.30.1"; pyproject = true; src = fetchFromGitHub { owner = "resend"; repo = "resend-python"; - tag = "v${version}"; - hash = "sha256-kUcudZCIU8LNl7HgBDRJ85rPIZRBVgvbp12ZgbfAZ4k="; + tag = "v${finalAttrs.version}"; + hash = "sha256-P9f5u7gOC7IqzlcmSIgxYX8+yn+57jifn2FP6zzHVRg="; }; build-system = [ setuptools ]; @@ -27,15 +28,18 @@ buildPythonPackage rec { typing-extensions ]; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + ]; pythonImportsCheck = [ "resend" ]; meta = { description = "SDK for Resend"; homepage = "https://github.com/resend/resend-python"; - changelog = "https://github.com/resend/resend-python/releases/tag/${src.tag}"; + changelog = "https://github.com/resend/resend-python/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; }; -} +}) diff --git a/pkgs/development/python-modules/viser/default.nix b/pkgs/development/python-modules/viser/default.nix index 8a24fecbd8b6..79f58d481e16 100644 --- a/pkgs/development/python-modules/viser/default.nix +++ b/pkgs/development/python-modules/viser/default.nix @@ -55,14 +55,14 @@ buildPythonPackage (finalAttrs: { pname = "viser"; - version = "1.0.27"; + version = "1.0.29"; pyproject = true; src = fetchFromGitHub { owner = "viser-project"; repo = "viser"; tag = "v${finalAttrs.version}"; - hash = "sha256-qE9V6KjniKm3vBtf5ger6UHob4go0wTaJnmYtvYqvMc="; + hash = "sha256-OeI/aEhJ0k9U2BtDEvwIimNFj74NZLSh4ieKnugn/hk="; }; postPatch = '' @@ -105,15 +105,14 @@ buildPythonPackage (finalAttrs: { trimesh typing-extensions websockets - yourdfpy zstandard ]; optional-dependencies = { + urdf = [ yourdfpy ]; dev = [ hypothesis nodeenv - opencv-python playwright pre-commit psutil @@ -122,7 +121,8 @@ buildPythonPackage (finalAttrs: { pytest-playwright pytest-xdist ruff - ]; + ] + ++ finalAttrs.passthru.optional-dependencies.examples; examples = [ gdown liblzfse @@ -134,7 +134,8 @@ buildPythonPackage (finalAttrs: { robot-descriptions torch tyro - ]; + ] + ++ finalAttrs.passthru.optional-dependencies.urdf; }; nativeCheckInputs = [ @@ -170,6 +171,8 @@ buildPythonPackage (finalAttrs: { "viser" ]; + __darwinAllowLocalNetworking = true; + meta = { changelog = "https://github.com/viser-project/viser/releases/tag/${finalAttrs.src.tag}"; description = "Web-based 3D visualization in Python";