diff --git a/pkgs/development/python-modules/apple-compress/default.nix b/pkgs/development/python-modules/apple-compress/default.nix new file mode 100644 index 000000000000..6f1f074a639e --- /dev/null +++ b/pkgs/development/python-modules/apple-compress/default.nix @@ -0,0 +1,43 @@ +{ + buildPythonPackage, + click, + fetchFromGitHub, + lib, + loguru, + poetry-core, +}: + +buildPythonPackage rec { + pname = "apple-compress"; + version = "0.2.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "m1stadev"; + repo = "apple-compress"; + tag = "v${version}"; + hash = "sha256-uM5HFkhvzAIfdAglPUvJfckngjUPSZqydyVcPcdtyfs="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + click + loguru + ]; + + pythonImportsCheck = [ "apple_compress" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/m1stadev/apple-compress/releases/tag/${src.tag}"; + description = "Python bindings for Apple's libcompression"; + homepage = "https://github.com/m1stadev/apple-compress"; + license = lib.licenses.mit; + mainProgram = "acompress"; + maintainers = [ lib.maintainers.dotlambda ]; + platforms = lib.platforms.darwin; + }; +} diff --git a/pkgs/development/python-modules/asn1/default.nix b/pkgs/development/python-modules/asn1/default.nix index 5386c2305c51..3e51d566e8b3 100644 --- a/pkgs/development/python-modules/asn1/default.nix +++ b/pkgs/development/python-modules/asn1/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "asn1"; - version = "3.1.0"; + version = "2.8.0"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "andrivet"; repo = "python-asn1"; tag = "v${version}"; - hash = "sha256-yDX2TydMtqIE4A4QUmKPJKLM1UdXxp0qFBJx08Ri2YQ="; + hash = "sha256-DLKfdQzYLhfaIEPPymTzRqj3+L/fsm5Jh8kqud/ezfw="; }; build-system = [ setuptools ]; @@ -34,7 +34,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python ASN.1 encoder and decoder"; homepage = "https://github.com/andrivet/python-asn1"; - changelog = "https://github.com/andrivet/python-asn1/blob/${src.tag}/CHANGELOG.rst"; + changelog = "https://github.com/andrivet/python-asn1/blob/v${version}/CHANGELOG.rst"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/developer-disk-image/default.nix b/pkgs/development/python-modules/developer-disk-image/default.nix new file mode 100644 index 000000000000..c9fb5931e337 --- /dev/null +++ b/pkgs/development/python-modules/developer-disk-image/default.nix @@ -0,0 +1,45 @@ +{ + buildPythonPackage, + fetchPypi, + lib, + pytestCheckHook, + requests, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "developer-disk-image"; + version = "0.2.0"; + pyproject = true; + + # GitHub archive is way too large + src = fetchPypi { + pname = "developer_disk_image"; + inherit version; + hash = "sha256-21aLIuwznYtWsprptCAjDq4yL+ab50zZn9Dv+w7y4o8="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + requests + ]; + + pythonImportsCheck = [ "developer_disk_image" ]; + + # tests connect to github.com + doCheck = false; + + meta = { + changelog = "https://github.com/doronz88/DeveloperDiskImage/releases/tag/v${version}"; + description = "Download DeveloperDiskImage ans Personalized images from GitHub"; + homepage = "https://github.com/doronz88/DeveloperDiskImage"; + license = lib.licenses.gpl3Plus; + mainProgram = "developer_disk_image"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/inquirer3/default.nix b/pkgs/development/python-modules/inquirer3/default.nix new file mode 100644 index 000000000000..949c7513141c --- /dev/null +++ b/pkgs/development/python-modules/inquirer3/default.nix @@ -0,0 +1,47 @@ +{ + blessed, + buildPythonPackage, + editor, + fetchFromGitHub, + lib, + pexpect, + poetry-core, + pytestCheckHook, + readchar, +}: + +buildPythonPackage rec { + pname = "inquirer3"; + version = "0.6.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "guysalt"; + repo = "python-inquirer3"; + tag = "v${version}"; + hash = "sha256-IReJlwVgjTlTlD0xTVWrzQ0ITvCQvPJ86zCmffaoPk4="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + blessed + editor + readchar + ]; + + pythonImportsCheck = [ "inquirer3" ]; + + nativeCheckInputs = [ + pexpect + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/guysalt/python-inquirer3/releases/tag/${src.tag}"; + description = "Collection of common interactive command line user interfaces, based on Inquirer.js"; + homepage = "https://github.com/guysalt/python-inquirer3"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/ipsw-parser/default.nix b/pkgs/development/python-modules/ipsw-parser/default.nix new file mode 100644 index 000000000000..b88e2e6a04bd --- /dev/null +++ b/pkgs/development/python-modules/ipsw-parser/default.nix @@ -0,0 +1,63 @@ +{ + buildPythonPackage, + cached-property, + click, + coloredlogs, + construct, + fetchFromGitHub, + lib, + plumbum, + pyimg4, + remotezip2, + requests, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "ipsw-parser"; + version = "1.4.4"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "ipsw_parser"; + tag = "v${version}"; + hash = "sha256-B9T7c2xzUrzh5BxS7b3rpmPcUDT8Qmb4/5XTMfrOcR8="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + cached-property + click + coloredlogs + construct + plumbum + pyimg4 + remotezip2 + requests + ]; + + pythonImportsCheck = [ "ipsw_parser" ]; + + checkPhase = '' + runHook preCheck + + "$out"/bin/${meta.mainProgram} --help + + runHook postCheck + ''; + + meta = { + changelog = "https://github.com/doronz88/ipsw_parser/releases/tag/${src.tag}"; + description = "Python3 utility for parsing and extracting data from IPSW"; + homepage = "https://github.com/doronz88/ipsw_parser"; + license = lib.licenses.gpl3Plus; + mainProgram = "ipsw-parser"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/la-panic/default.nix b/pkgs/development/python-modules/la-panic/default.nix new file mode 100644 index 000000000000..9d2600623823 --- /dev/null +++ b/pkgs/development/python-modules/la-panic/default.nix @@ -0,0 +1,46 @@ +{ + buildPythonPackage, + cached-property, + click, + coloredlogs, + fetchFromGitLab, + lib, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "la-panic"; + version = "0.5.0"; + pyproject = true; + + src = fetchFromGitLab { + owner = "yanivhasbanidev"; + repo = "la_panic"; + tag = version; + hash = "sha256-V9VUSp5uvj4jR3oVHdRjvnNDGB1a5bi8elu/ry4jq00="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + cached-property + click + coloredlogs + ]; + + pythonImportsCheck = [ "la_panic" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://gitlab.com/yanivhasbanidev/la_panic/-/tags/${src.tag}"; + description = "AppleOS Kernel Panic Parser"; + homepage = "https://gitlab.com/yanivhasbanidev/la_panic"; + license = lib.licenses.gpl3Plus; + mainProgram = "la_panic"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/lzfse/default.nix b/pkgs/development/python-modules/lzfse/default.nix new file mode 100644 index 000000000000..005f21d591e3 --- /dev/null +++ b/pkgs/development/python-modules/lzfse/default.nix @@ -0,0 +1,35 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + setuptools, +}: + +buildPythonPackage rec { + pname = "lzfse"; + version = "0.4.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "m1stadev"; + repo = "lzfse"; + tag = "v${version}"; + fetchSubmodules = true; + hash = "sha256-ER+Hr/WrGCB0uYwsSgB4U8sCPeZ4JlOHoeb5YEGUFFM="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "lzfse" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/m1stadev/lzfse/releases/tag/${src.tag}"; + description = "Python bindings for the LZFSE reference implementation"; + homepage = "https://github.com/m1stadev/lzfse"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/opack2/default.nix b/pkgs/development/python-modules/opack2/default.nix new file mode 100644 index 000000000000..d2d4830cede0 --- /dev/null +++ b/pkgs/development/python-modules/opack2/default.nix @@ -0,0 +1,43 @@ +{ + arrow, + buildPythonPackage, + construct, + fetchFromGitHub, + lib, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "opack2"; + version = "0.0.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "opack2"; + tag = "v${version}"; + hash = "sha256-7kRR4KOR3Wrya2YE8nL5laXrsnI1lSVZMBEij44J+T0="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + arrow + construct + ]; + + pythonImportsCheck = [ "opack2" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/doronz88/opack2/releases/tag/${src.tag}"; + description = "Python library for parsing the opack format"; + homepage = "https://github.com/doronz88/opack2"; + license = lib.licenses.gpl3Plus; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/parameter-decorators/default.nix b/pkgs/development/python-modules/parameter-decorators/default.nix new file mode 100644 index 000000000000..4a12cf046bc6 --- /dev/null +++ b/pkgs/development/python-modules/parameter-decorators/default.nix @@ -0,0 +1,36 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "parameter-decorators"; + version = "0.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matan1008"; + repo = "parameter-decorators"; + tag = "v${version}"; + hash = "sha256-ZTgUsBc2ArnRPR4k0Od2A571iFfu+oupCxEqzk2cTUQ="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "parameter_decorators" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/matan1008/parameter-decorators/releases/tag/${src.tag}"; + description = "Handy decorators for converting parameters"; + homepage = "https://github.com/matan1008/parameter-decorators"; + license = lib.licenses.gpl3Only; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pycrashreport/default.nix b/pkgs/development/python-modules/pycrashreport/default.nix new file mode 100644 index 000000000000..05f5cf24022f --- /dev/null +++ b/pkgs/development/python-modules/pycrashreport/default.nix @@ -0,0 +1,50 @@ +{ + buildPythonPackage, + cached-property, + click, + fetchFromGitHub, + la-panic, + lib, + pytestCheckHook, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "pycrashreport"; + version = "1.2.7"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "pycrashreport"; + tag = "v${version}"; + hash = "sha256-QhHjQO/swoFYKlHaqpaU1qIGwHIK5Eq3ZHrFJEHZbWs="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + cached-property + click + la-panic + ]; + + pythonImportsCheck = [ "pycrashreport" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/doronz88/pycrashreport/releases/tag/${src.tag}"; + description = "Python3 parser for Apple's crash reports"; + homepage = "https://github.com/doronz88/pycrashreport"; + license = lib.licenses.gpl3Plus; + mainProgram = "pycrashreport"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pygnuutils/default.nix b/pkgs/development/python-modules/pygnuutils/default.nix new file mode 100644 index 000000000000..fe57938210e5 --- /dev/null +++ b/pkgs/development/python-modules/pygnuutils/default.nix @@ -0,0 +1,41 @@ +{ + buildPythonPackage, + click, + fetchFromGitHub, + lib, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "pygnuutils"; + version = "0.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matan1008"; + repo = "pygnuutils"; + tag = "v${version}"; + hash = "sha256-RySqq1V6ad3W53Rp/ZweMPnbM7C3RDm3b6KV/FKQyW0="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + click + ]; + + pythonImportsCheck = [ "pygnuutils" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/matan1008/pygnuutils/releases/tag/${src.tag}"; + description = "Pure python implementation for GNU utils"; + homepage = "https://github.com/matan1008/pygnuutils"; + license = lib.licenses.gpl3Only; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pyimg4/default.nix b/pkgs/development/python-modules/pyimg4/default.nix new file mode 100644 index 000000000000..eced828111dc --- /dev/null +++ b/pkgs/development/python-modules/pyimg4/default.nix @@ -0,0 +1,76 @@ +{ + apple-compress, + asn1, + buildPythonPackage, + click, + fetchFromGitHub, + hatchling, + lib, + lzfse, + pycryptodome, + pylzss, + pytestCheckHook, + remotezip, + stdenv, + uv-dynamic-versioning, +}: + +buildPythonPackage rec { + pname = "pyimg4"; + version = "0.8.8"; + pyproject = true; + + src = fetchFromGitHub { + owner = "m1stadev"; + repo = "PyIMG4"; + tag = "v${version}"; + hash = "sha256-rGFHd4MAJrbKhtX+Ey/zqQ/12wWxDyBBy1xPGDFQjao="; + }; + + build-system = [ + hatchling + uv-dynamic-versioning + ]; + + pythonRelaxDeps = [ + "pylzss" + ]; + + dependencies = [ + asn1 + click + pycryptodome + pylzss + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + apple-compress + ] + ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ + lzfse + ]; + + pythonImportsCheck = [ "pyimg4" ]; + + nativeCheckInputs = [ + pytestCheckHook + remotezip + ]; + + disabledTests = [ + # tests take forever + "test_read_lzss_dec" + "test_read_lzss_enc" + "test_read_lzfse_dec" + "test_read_lzfse_enc" + "test_read_payp" + ]; + + meta = { + changelog = "https://github.com/m1stadev/PyIMG4/releases/tag/${src.tag}"; + description = "Python library/CLI tool for parsing Apple's Image4 format"; + homepage = "https://github.com/m1stadev/PyIMG4"; + license = lib.licenses.mit; + mainProgram = "pyimg4"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pykdebugparser/default.nix b/pkgs/development/python-modules/pykdebugparser/default.nix new file mode 100644 index 000000000000..d4bf97311283 --- /dev/null +++ b/pkgs/development/python-modules/pykdebugparser/default.nix @@ -0,0 +1,48 @@ +{ + buildPythonPackage, + click, + construct, + fetchFromGitHub, + lib, + pygments, + pytestCheckHook, + setuptools, + termcolor, +}: + +buildPythonPackage rec { + pname = "pykdebugparser"; + version = "1.2.7"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matan1008"; + repo = "pykdebugparser"; + tag = "v${version}"; + hash = "sha256-V6WyFsPcjiBUJ+Amc3xk0GwdHzwakRizB/dPnSXT6vo="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + click + construct + pygments + termcolor + ]; + + pythonImportsCheck = [ "pykdebugparser" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/matan1008/pykdebugparser/releases/tag/${src.tag}"; + description = "Kdebug events and ktraces parser"; + homepage = "https://github.com/matan1008/pykdebugparser"; + license = lib.licenses.mit; + mainProgram = "pykdebugparser"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pylzss/default.nix b/pkgs/development/python-modules/pylzss/default.nix new file mode 100644 index 000000000000..19d9f14f21c4 --- /dev/null +++ b/pkgs/development/python-modules/pylzss/default.nix @@ -0,0 +1,34 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, +}: + +buildPythonPackage rec { + pname = "pylzss"; + version = "0.3.8"; + pyproject = true; + + src = fetchFromGitHub { + owner = "m1stadev"; + repo = "pylzss"; + tag = "v${version}"; + hash = "sha256-Y0u9rFJWYWyJUVEgpLtQHsXu0JpTgRKxFJHB+B3EFyU="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "lzss" ]; + + # upstream's test.py is dysfunctional + doCheck = false; + + meta = { + changelog = "https://github.com/m1stadev/pylzss/releases/tag/${src.tag}"; + description = "Python library for decoding/encoding LZSS-compressed data"; + homepage = "https://github.com/m1stadev/pylzss"; + license = lib.licenses.gpl3Only; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pymobiledevice3/default.nix b/pkgs/development/python-modules/pymobiledevice3/default.nix new file mode 100644 index 000000000000..301251829f6a --- /dev/null +++ b/pkgs/development/python-modules/pymobiledevice3/default.nix @@ -0,0 +1,127 @@ +{ + bpylist2, + buildPythonPackage, + click, + coloredlogs, + construct, + cryptography, + daemonize, + developer-disk-image, + fastapi, + fetchFromGitHub, + gpxpy, + hexdump, + hyperframe, + ifaddr, + inquirer3, + ipsw-parser, + ipython, + lib, + nest-asyncio, + opack2, + packaging, + parameter-decorators, + pillow, + plumbum, + psutil, + pycrashreport, + pygments, + pygnuutils, + pykdebugparser, + pytest-asyncio, + pytestCheckHook, + python-pcapng, + pytun-pmd3, + pyusb, + qh3, + requests, + setuptools, + setuptools-scm, + srptools, + sslpsk-pmd3, + tqdm, + uvicorn, + wsproto, + xonsh, + zeroconf, +}: + +buildPythonPackage rec { + pname = "pymobiledevice3"; + version = "4.27.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "pymobiledevice3"; + tag = "v${version}"; + hash = "sha256-YYRDsE/rfTAnjDrJ0sMLeTyKshhl8NXhdspQUql2RAE="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + bpylist2 + click + coloredlogs + construct + cryptography + daemonize + developer-disk-image + fastapi + gpxpy + hexdump + hyperframe + ifaddr + inquirer3 + ipsw-parser + ipython + nest-asyncio + opack2 + packaging + parameter-decorators + pillow + plumbum + psutil + pycrashreport + pygments + pygnuutils + pykdebugparser + python-pcapng + pytun-pmd3 + pyusb + qh3 + requests + srptools + sslpsk-pmd3 + tqdm + uvicorn + wsproto + xonsh + zeroconf + ] + ++ fastapi.optional-dependencies.all; + + pythonImportsCheck = [ "pymobiledevice3" ]; + + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + ]; + + # Upstream only runs tests marked with 'cli' in CI: + # https://github.com/doronz88/pymobiledevice3/blob/v4.27.1/.github/workflows/python-app.yml#L45 + enabledTestMarks = [ "cli" ]; + + meta = { + changelog = "https://github.com/doronz88/pymobiledevice3/releases/tag/${src.tag}"; + description = "Pure python3 implementation for working with iDevices (iPhone, etc.)"; + homepage = "https://github.com/doronz88/pymobiledevice3"; + license = lib.licenses.gpl3Plus; + mainProgram = "pymobiledevice3"; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/python-pcapng/default.nix b/pkgs/development/python-modules/python-pcapng/default.nix new file mode 100644 index 000000000000..ffcf10c16f05 --- /dev/null +++ b/pkgs/development/python-modules/python-pcapng/default.nix @@ -0,0 +1,40 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + pytestCheckHook, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "python-pcapng"; + version = "2.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "rshk"; + repo = "python-pcapng"; + tag = version; + hash = "sha256-uyoutb4Hk2Wd3z7UopNxauMLGdYVOAhDNzRKclSr7No="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + pythonImportsCheck = [ "pcapng" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/rshk/python-pcapng/blob/${src.tag}/CHANGELOG.rst"; + description = "Library to read/write the pcap-ng format used by various packet sniffers"; + homepage = "https://github.com/rshk/python-pcapng"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pytun-pmd3/default.nix b/pkgs/development/python-modules/pytun-pmd3/default.nix new file mode 100644 index 000000000000..14dc2052fa59 --- /dev/null +++ b/pkgs/development/python-modules/pytun-pmd3/default.nix @@ -0,0 +1,38 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "pytun-pmd3"; + version = "3.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "pytun-pmd3"; + tag = "v${version}"; + hash = "sha256-3x+z+O6isgVRbPK+INfG5nG/+Tb2CWvPHg4TosH91so="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + pythonImportsCheck = [ "pytun_pmd3" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/doronz88/pytun-pmd3/releases/tag/${src.tag}"; + description = "TUN/TAP wrapper for Python with Darwin support"; + homepage = "https://github.com/doronz88/pytun-pmd3"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/remotezip2/default.nix b/pkgs/development/python-modules/remotezip2/default.nix new file mode 100644 index 000000000000..64fd89f042e9 --- /dev/null +++ b/pkgs/development/python-modules/remotezip2/default.nix @@ -0,0 +1,49 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + python, + requests-mock, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "remotezip2"; + version = "0.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "python-remotezip2"; + tag = "v${version}"; + hash = "sha256-UyfAoe9pXCGLGPIE2LSLvnIaju+nXt3s7ddGlpmJGUg="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + pythonImportsCheck = [ "remotezip2" ]; + + nativeCheckInputs = [ + requests-mock + ]; + + checkPhase = '' + runHook preCheck + + ${python.interpreter} test_remotezip2.py + + runHook postCheck + ''; + + meta = { + changelog = "https://github.com/doronz88/python-remotezip2/releases/tag/${src.tag}"; + description = "Access zip file content hosted remotely without downloading the full file"; + homepage = "https://github.com/doronz88/python-remotezip2"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/sslpsk-pmd3/default.nix b/pkgs/development/python-modules/sslpsk-pmd3/default.nix new file mode 100644 index 000000000000..e65aca82a7f9 --- /dev/null +++ b/pkgs/development/python-modules/sslpsk-pmd3/default.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + openssl, + pytestCheckHook, + setuptools, + setuptools-scm, +}: + +buildPythonPackage rec { + pname = "sslpsk-pmd3"; + version = "1.0.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "doronz88"; + repo = "sslpsk-pmd3"; + tag = "v${version}"; + hash = "sha256-ZOPrMZhtHIpE7QMEYGti+ZjqVv93jzb74rG5Fwhjgyw="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + buildInputs = [ + openssl + ]; + + pythonImportsCheck = [ "sslpsk_pmd3" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + preCheck = '' + # import from $out + mv sslpsk_pmd3 src + ''; + + # tests are dysfunctional + doCheck = false; + + meta = { + changelog = "https://github.com/doronz88/sslpsk-pmd3/releases/tag/${src.tag}"; + description = "Adds TLS-PSK support to the Python ssl package"; + homepage = "https://github.com/doronz88/sslpsk-pmd3"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4cd9c7b53118..5655cb7d68b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -796,6 +796,8 @@ self: super: with self; { appium-python-client = callPackage ../development/python-modules/appium-python-client { }; + apple-compress = callPackage ../development/python-modules/apple-compress { }; + apple-weatherkit = callPackage ../development/python-modules/apple-weatherkit { }; applicationinsights = callPackage ../development/python-modules/applicationinsights { }; @@ -3634,6 +3636,8 @@ self: super: with self; { detectron2 = callPackage ../development/python-modules/detectron2 { }; + developer-disk-image = callPackage ../development/python-modules/developer-disk-image { }; + devgoldyutils = callPackage ../development/python-modules/devgoldyutils { }; devialet = callPackage ../development/python-modules/devialet { }; @@ -7133,6 +7137,8 @@ self: super: with self; { inquirer = callPackage ../development/python-modules/inquirer { }; + inquirer3 = callPackage ../development/python-modules/inquirer3 { }; + inquirerpy = callPackage ../development/python-modules/inquirerpy { }; inscriptis = callPackage ../development/python-modules/inscriptis { }; @@ -7217,6 +7223,8 @@ self: super: with self; { iplotx = callPackage ../development/python-modules/iplotx { }; + ipsw-parser = callPackage ../development/python-modules/ipsw-parser { }; + iptools = callPackage ../development/python-modules/iptools { }; ipv8-rust-tunnels = callPackage ../development/python-modules/ipv8-rust-tunnels { }; @@ -7930,6 +7938,8 @@ self: super: with self; { l18n = callPackage ../development/python-modules/l18n { }; + la-panic = callPackage ../development/python-modules/la-panic { }; + labelbox = callPackage ../development/python-modules/labelbox { }; labgrid = callPackage ../development/python-modules/labgrid { }; @@ -8892,6 +8902,8 @@ self: super: with self; { lzallright = callPackage ../development/python-modules/lzallright { }; + lzfse = callPackage ../development/python-modules/lzfse { }; + lzstring = callPackage ../development/python-modules/lzstring { }; m2crypto = callPackage ../development/python-modules/m2crypto { }; @@ -10912,6 +10924,8 @@ self: super: with self; { oocsi = callPackage ../development/python-modules/oocsi { }; + opack2 = callPackage ../development/python-modules/opack2 { }; + opaque = callPackage ../development/python-modules/opaque { }; opcua-widgets = callPackage ../development/python-modules/opcua-widgets { }; @@ -11423,6 +11437,8 @@ self: super: with self; { paramax = callPackage ../development/python-modules/paramax { }; + parameter-decorators = callPackage ../development/python-modules/parameter-decorators { }; + parameter-expansion-patched = callPackage ../development/python-modules/parameter-expansion-patched { }; @@ -12770,6 +12786,8 @@ self: super: with self; { pycparser = callPackage ../development/python-modules/pycparser { }; + pycrashreport = callPackage ../development/python-modules/pycrashreport { }; + pycrc = callPackage ../development/python-modules/pycrc { }; pycrdt = callPackage ../development/python-modules/pycrdt { }; @@ -13124,6 +13142,8 @@ self: super: with self; { pygnmi = callPackage ../development/python-modules/pygnmi { }; + pygnuutils = callPackage ../development/python-modules/pygnuutils { }; + pygobject-stubs = callPackage ../development/python-modules/pygobject-stubs { }; pygobject3 = callPackage ../development/python-modules/pygobject/3.nix { @@ -13203,6 +13223,8 @@ self: super: with self; { pyicumessageformat = callPackage ../development/python-modules/pyicumessageformat { }; + pyimg4 = callPackage ../development/python-modules/pyimg4 { }; + pyimgbox = callPackage ../development/python-modules/pyimgbox { }; pyimpfuzzy = callPackage ../development/python-modules/pyimpfuzzy { inherit (pkgs) ssdeep; }; @@ -13279,6 +13301,8 @@ self: super: with self; { pykcs11 = callPackage ../development/python-modules/pykcs11 { }; + pykdebugparser = callPackage ../development/python-modules/pykdebugparser { }; + pykdl = callPackage ../development/python-modules/pykdl { }; pykdtree = callPackage ../development/python-modules/pykdtree { @@ -13431,6 +13455,8 @@ self: super: with self; { pylzma = callPackage ../development/python-modules/pylzma { }; + pylzss = callPackage ../development/python-modules/pylzss { }; + pym3u8downloader = callPackage ../development/python-modules/pym3u8downloader { }; pymacaroons = callPackage ../development/python-modules/pymacaroons { }; @@ -13507,6 +13533,8 @@ self: super: with self; { pymitv = callPackage ../development/python-modules/pymitv { }; + pymobiledevice3 = callPackage ../development/python-modules/pymobiledevice3 { }; + pymochad = callPackage ../development/python-modules/pymochad { }; pymodbus = callPackage ../development/python-modules/pymodbus { }; @@ -15052,6 +15080,8 @@ self: super: with self; { python-path = callPackage ../development/python-modules/python-path { }; + python-pcapng = callPackage ../development/python-modules/python-pcapng { }; + python-periphery = callPackage ../development/python-modules/python-periphery { }; python-picnic-api2 = callPackage ../development/python-modules/python-picnic-api2 { }; @@ -15306,6 +15336,8 @@ self: super: with self; { pytun = callPackage ../development/python-modules/pytun { }; + pytun-pmd3 = callPackage ../development/python-modules/pytun-pmd3 { }; + pyturbojpeg = callPackage ../development/python-modules/pyturbojpeg { }; pytweening = callPackage ../development/python-modules/pytweening { }; @@ -15851,6 +15883,8 @@ self: super: with self; { remotezip = callPackage ../development/python-modules/remotezip { }; + remotezip2 = callPackage ../development/python-modules/remotezip2 { }; + renault-api = callPackage ../development/python-modules/renault-api { }; rencode = callPackage ../development/python-modules/rencode { }; @@ -17584,6 +17618,8 @@ self: super: with self; { sslib = callPackage ../development/python-modules/sslib { }; + sslpsk-pmd3 = callPackage ../development/python-modules/sslpsk-pmd3 { }; + ssort = callPackage ../development/python-modules/ssort { }; sss = callPackage ../development/python-modules/sss { };