From 10db73fe5f64ba627382ba17831f2db8c8564a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 30 Apr 2025 13:09:46 +0200 Subject: [PATCH 1/5] python313Packages.mitmproxy-linux: 0.11.5 -> 0.12.3, remove things duplicated and in sync with mitmproxy-rs Changelog: https://github.com/mitmproxy/mitmproxy_rs/blob/v0.12.3/CHANGELOG.md --- .../mitmproxy-linux/default.nix | 37 ++++++------------- 1 file changed, 12 insertions(+), 25 deletions(-) diff --git a/pkgs/development/python-modules/mitmproxy-linux/default.nix b/pkgs/development/python-modules/mitmproxy-linux/default.nix index 6e6478127324..1b4cb3a8590c 100644 --- a/pkgs/development/python-modules/mitmproxy-linux/default.nix +++ b/pkgs/development/python-modules/mitmproxy-linux/default.nix @@ -2,23 +2,15 @@ lib, buildPythonPackage, bpf-linker, - fetchFromGitHub, rustPlatform, - mitmproxy, + mitmproxy-rs, }: -buildPythonPackage rec { +buildPythonPackage { pname = "mitmproxy-linux"; - version = "0.11.5"; + inherit (mitmproxy-rs) version src cargoDeps; pyproject = true; - src = fetchFromGitHub { - owner = "mitmproxy"; - repo = "mitmproxy_rs"; - tag = "v${version}"; - hash = "sha256-vC+Vsv7UWjkO+6lm7gAb91Ig04Y7r9gYQoz6R9xpxsA="; - }; - postPatch = '' substituteInPlace mitmproxy-linux/build.rs \ --replace-fail '"-Z",' "" \ @@ -28,11 +20,6 @@ buildPythonPackage rec { --replace-fail 'build-std = ["core"]' "" ''; - cargoDeps = rustPlatform.fetchCargoVendor { - inherit pname version src; - hash = "sha256-CFsefq1zQLIYjZcfoy3afYfP/0MlBoi9kVx7FVGEKr0="; - }; - RUSTFLAGS = "-C target-feature="; RUSTC_BOOTSTRAP = 1; @@ -49,13 +36,13 @@ buildPythonPackage rec { pythonImportsCheck = [ "mitmproxy_linux" ]; - meta = { - description = "Rust bits in mitmproxy"; - homepage = "https://github.com/mitmproxy/mitmproxy_rs/tree/main/mitmproxy-linux"; - changelog = "https://github.com/mitmproxy/mitmproxy_rs/blob/${src.rev}/CHANGELOG.md#${ - lib.replaceStrings [ "." ] [ "" ] version - }"; - license = lib.licenses.mit; - inherit (mitmproxy.meta) maintainers; - }; + meta = + { + inherit (mitmproxy-rs.meta) changelog license maintainers; + } + // { + description = "Linux Rust bits in mitmproxy"; + homepage = "https://github.com/mitmproxy/mitmproxy_rs/tree/main/mitmproxy-linux"; + platforms = lib.platforms.linux; + }; } From d0a2d590d2b88687b06a75b087ede9e1467204a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 30 Apr 2025 13:10:15 +0200 Subject: [PATCH 2/5] python313Packages.mitmproxy-macos: 0.11.5 -> 0.12.3, remove things duplicated and in sync with mitmproxy-rs Changelog: https://github.com/mitmproxy/mitmproxy_rs/blob/v0.12.3/CHANGELOG.md --- pkgs/development/python-modules/mitmproxy-macos/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/mitmproxy-macos/default.nix b/pkgs/development/python-modules/mitmproxy-macos/default.nix index 16c0f3160649..caf00819f313 100644 --- a/pkgs/development/python-modules/mitmproxy-macos/default.nix +++ b/pkgs/development/python-modules/mitmproxy-macos/default.nix @@ -2,11 +2,12 @@ lib, buildPythonPackage, fetchPypi, + mitmproxy-rs, }: buildPythonPackage rec { pname = "mitmproxy-macos"; - version = "0.11.5"; + inherit (mitmproxy-rs) version; format = "wheel"; src = fetchPypi { @@ -15,7 +16,7 @@ buildPythonPackage rec { format = "wheel"; dist = "py3"; python = "py3"; - hash = "sha256-j3qqZGrMZLpHkKf01Gy5+/18sEEbm3pWfbBASGS/8o0="; + hash = "sha256-sNguT3p72v9+FU5XFLYV6p0fO6WvGYerPy68GINwbyA="; }; # repo has no python tests From fbe75a46297790ddb7fd96de4602d53069a717f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 30 Apr 2025 13:10:24 +0200 Subject: [PATCH 3/5] python313Packages.mitmproxy-rs: 0.11.5 -> 0.12.3 Changelog: https://github.com/mitmproxy/mitmproxy_rs/blob/v0.12.3/CHANGELOG.md --- pkgs/development/python-modules/mitmproxy-rs/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/mitmproxy-rs/default.nix b/pkgs/development/python-modules/mitmproxy-rs/default.nix index e5f9300a38d1..f0598f51944a 100644 --- a/pkgs/development/python-modules/mitmproxy-rs/default.nix +++ b/pkgs/development/python-modules/mitmproxy-rs/default.nix @@ -11,21 +11,21 @@ buildPythonPackage rec { pname = "mitmproxy-rs"; - version = "0.11.5"; + version = "0.12.3"; pyproject = true; src = fetchFromGitHub { owner = "mitmproxy"; repo = "mitmproxy_rs"; - rev = "v${version}"; - hash = "sha256-vC+Vsv7UWjkO+6lm7gAb91Ig04Y7r9gYQoz6R9xpxsA="; + tag = "v${version}"; + hash = "sha256-bWvSaUx5nv8d17eOWyYlhSDi71rHycrFoDGRuQEL7LU="; }; buildAndTestSubdir = "mitmproxy-rs"; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname version src; - hash = "sha256-CFsefq1zQLIYjZcfoy3afYfP/0MlBoi9kVx7FVGEKr0="; + hash = "sha256-9J5RVGCXyMOcCYUP+LS92Xv1krA+feoMqFgeFExxxqY="; }; nativeBuildInputs = [ From 4047fe61aa7ef45e3d50000168754b5f5ca497f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 30 Apr 2025 12:53:50 +0200 Subject: [PATCH 4/5] mitmproxy: 11.1.3 -> 12.0.0 Changelog: https://github.com/mitmproxy/mitmproxy/blob/v12.0.0/CHANGELOG.md --- .../python-modules/mitmproxy/default.nix | 34 +++++++++---------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/pkgs/development/python-modules/mitmproxy/default.nix b/pkgs/development/python-modules/mitmproxy/default.nix index cc2a56ea2544..78cd23d01250 100644 --- a/pkgs/development/python-modules/mitmproxy/default.nix +++ b/pkgs/development/python-modules/mitmproxy/default.nix @@ -1,20 +1,21 @@ { lib, - fetchFromGitHub, - buildPythonPackage, - # Mitmproxy requirements aioquic, argon2-cffi, asgiref, brotli, + buildPythonPackage, certifi, cryptography, + fetchFromGitHub, flask, h11, h2, hyperframe, + hypothesis, kaitaistruct, ldap3, + mitmproxy-linux, mitmproxy-rs, msgpack, passlib, @@ -22,41 +23,38 @@ pyopenssl, pyparsing, pyperclip, - ruamel-yaml, - setuptools, - sortedcontainers, - tornado, - urwid, - wsproto, - zstandard, - # Additional check requirements - hypothesis, pytest-asyncio, pytest-timeout, pytest-xdist, pytestCheckHook, requests, + ruamel-yaml, + setuptools, + sortedcontainers, + stdenv, + tornado, + urwid, + wsproto, + zstandard, }: buildPythonPackage rec { pname = "mitmproxy"; - version = "11.1.3"; + version = "12.0.0"; pyproject = true; src = fetchFromGitHub { owner = "mitmproxy"; repo = "mitmproxy"; tag = "v${version}"; - hash = "sha256-gTeXxNQWVMQYiGdIyy7SS6JcuYG16KLnjxBBdjhi+lE="; + hash = "sha256-2dEoPgT8g59sLRV5gMPo7XII0XjTrn2cVdYetxDj/V0="; }; pythonRelaxDeps = [ + "h11" # https://github.com/NixOS/nixpkgs/pull/399393 "h2" "passlib" - "protobuf" - "pyparsing" - "ruamel.yaml" - "urwid" + "typing-extensions" # https://github.com/NixOS/nixpkgs/pull/397082 ]; build-system = [ setuptools ]; From f69a189f1ef8cbfe0d10660c90e78a7303f5fd42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 30 Apr 2025 15:00:22 +0200 Subject: [PATCH 5/5] python313Packages.mitmproxy-linux: fix path to mitmproxy-linux-redirector when using mode local Closes #403028 --- .../python-modules/mitmproxy-linux/default.nix | 5 +++++ .../fix-mitmproxy-linux-redirector-path.diff | 13 +++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 pkgs/development/python-modules/mitmproxy-linux/fix-mitmproxy-linux-redirector-path.diff diff --git a/pkgs/development/python-modules/mitmproxy-linux/default.nix b/pkgs/development/python-modules/mitmproxy-linux/default.nix index 1b4cb3a8590c..8504fa751399 100644 --- a/pkgs/development/python-modules/mitmproxy-linux/default.nix +++ b/pkgs/development/python-modules/mitmproxy-linux/default.nix @@ -18,6 +18,11 @@ buildPythonPackage { substituteInPlace mitmproxy-linux-ebpf/.cargo/config.toml \ --replace-fail 'build-std = ["core"]' "" + + cp ${./fix-mitmproxy-linux-redirector-path.diff} tmp.diff + substituteInPlace tmp.diff \ + --replace-fail @mitmproxy-linux-redirector@ $out/bin/mitmproxy-linux-redirector + patch -p1 < tmp.diff ''; RUSTFLAGS = "-C target-feature="; diff --git a/pkgs/development/python-modules/mitmproxy-linux/fix-mitmproxy-linux-redirector-path.diff b/pkgs/development/python-modules/mitmproxy-linux/fix-mitmproxy-linux-redirector-path.diff new file mode 100644 index 000000000000..bd9754994355 --- /dev/null +++ b/pkgs/development/python-modules/mitmproxy-linux/fix-mitmproxy-linux-redirector-path.diff @@ -0,0 +1,13 @@ +diff --git a/mitmproxy-linux/mitmproxy_linux/__init__.py b/mitmproxy-linux/mitmproxy_linux/__init__.py +index 7c50254..68aea37 100644 +--- a/mitmproxy-linux/mitmproxy_linux/__init__.py ++++ b/mitmproxy-linux/mitmproxy_linux/__init__.py +@@ -12,6 +12,8 @@ def executable_path() -> Path: + for development setups this may invoke cargo to build it. + """ + ++ return "@mitmproxy-linux-redirector@" ++ + if getattr(sys, 'frozen', False) and (pyinstaller_dir := getattr(sys, '_MEIPASS')): + return Path(pyinstaller_dir) / "mitmproxy-linux-redirector" + else: