mitmproxy: convert to python3Packages
This commit is contained in:
parent
bbdc1d118b
commit
0e5657498d
114
pkgs/development/python-modules/mitmproxy/default.nix
Normal file
114
pkgs/development/python-modules/mitmproxy/default.nix
Normal file
@ -0,0 +1,114 @@
|
||||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, isPy27
|
||||
# Mitmproxy requirements
|
||||
, blinker
|
||||
, brotli
|
||||
, certifi
|
||||
, click
|
||||
, cryptography
|
||||
, flask
|
||||
, h2
|
||||
, hyperframe
|
||||
, kaitaistruct
|
||||
, ldap3
|
||||
, passlib
|
||||
, protobuf
|
||||
, pyasn1
|
||||
, pyopenssl
|
||||
, pyparsing
|
||||
, pyperclip
|
||||
, ruamel_yaml
|
||||
, setuptools
|
||||
, sortedcontainers
|
||||
, tornado
|
||||
, urwid
|
||||
, wsproto
|
||||
, publicsuffix2
|
||||
, zstandard
|
||||
# Additional check requirements
|
||||
, beautifulsoup4
|
||||
, glibcLocales
|
||||
, pytest
|
||||
, requests
|
||||
, asynctest
|
||||
, parver
|
||||
, pytest-asyncio
|
||||
, hypothesis
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mitmproxy";
|
||||
version = "5.1.1";
|
||||
disabled = isPy27;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1lirlckpvd3c6s6q3p32w4k4yfna5mlgr1x9g39lhzzq0sdiz3lk";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# remove dependency constraints
|
||||
sed 's/>=\([0-9]\.\?\)\+\( \?, \?<\([0-9]\.\?\)\+\)\?//' -i setup.py
|
||||
'';
|
||||
|
||||
doCheck = (!stdenv.isDarwin);
|
||||
|
||||
# examples.complex.xss_scanner doesn't import correctly with pytest5
|
||||
checkPhase = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export LC_CTYPE=en_US.UTF-8
|
||||
pytest --ignore test/examples \
|
||||
-k 'not test_find_unclaimed_URLs and not test_tcp'
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
# setup.py
|
||||
blinker
|
||||
brotli
|
||||
certifi
|
||||
click
|
||||
cryptography
|
||||
flask
|
||||
h2
|
||||
hyperframe
|
||||
kaitaistruct
|
||||
ldap3
|
||||
passlib
|
||||
protobuf
|
||||
publicsuffix2
|
||||
pyasn1
|
||||
pyopenssl
|
||||
pyparsing
|
||||
pyperclip
|
||||
ruamel_yaml
|
||||
sortedcontainers
|
||||
tornado
|
||||
urwid
|
||||
wsproto
|
||||
zstandard
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
asynctest
|
||||
beautifulsoup4
|
||||
flask
|
||||
glibcLocales
|
||||
hypothesis
|
||||
parver
|
||||
pytest
|
||||
pytest-asyncio
|
||||
requests
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Man-in-the-middle proxy";
|
||||
homepage = "https://mitmproxy.org/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fpletz kamilchm ];
|
||||
};
|
||||
}
|
@ -1,55 +0,0 @@
|
||||
{ stdenv, fetchFromGitHub, python3Packages, glibcLocales, fetchpatch }:
|
||||
|
||||
with python3Packages;
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mitmproxy";
|
||||
version = "5.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1lirlckpvd3c6s6q3p32w4k4yfna5mlgr1x9g39lhzzq0sdiz3lk";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# remove dependency constraints
|
||||
sed 's/>=\([0-9]\.\?\)\+\( \?, \?<\([0-9]\.\?\)\+\)\?//' -i setup.py
|
||||
'';
|
||||
|
||||
doCheck = (!stdenv.isDarwin);
|
||||
|
||||
# examples.complex.xss_scanner doesn't import correctly with pytest5
|
||||
checkPhase = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export LC_CTYPE=en_US.UTF-8
|
||||
pytest --ignore test/examples \
|
||||
-k 'not test_find_unclaimed_URLs and not test_tcp'
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
blinker brotli certifi cffi
|
||||
click cryptography flask h11
|
||||
h2 hpack hyperframe itsdangerous
|
||||
jinja2 kaitaistruct ldap3 markupsafe
|
||||
passlib protobuf publicsuffix2 pyasn1
|
||||
pycparser pyopenssl pyparsing pyperclip
|
||||
ruamel_yaml setuptools six sortedcontainers
|
||||
tornado urwid werkzeug wsproto zstandard
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
beautifulsoup4 flask pytest
|
||||
requests glibcLocales
|
||||
asynctest parver pytest-asyncio
|
||||
hypothesis
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Man-in-the-middle proxy";
|
||||
homepage = "https://mitmproxy.org/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fpletz kamilchm ];
|
||||
};
|
||||
}
|
@ -5470,9 +5470,7 @@ in
|
||||
|
||||
mirrorbits = callPackage ../servers/mirrorbits { };
|
||||
|
||||
mitmproxy = callPackage ../tools/networking/mitmproxy {
|
||||
python3Packages = python37Packages;
|
||||
};
|
||||
mitmproxy = with python3Packages; toPythonApplication mitmproxy;
|
||||
|
||||
mjpegtools = callPackage ../tools/video/mjpegtools { };
|
||||
|
||||
|
@ -3657,6 +3657,8 @@ in {
|
||||
|
||||
mistune = callPackage ../development/python-modules/mistune { };
|
||||
|
||||
mitmproxy = callPackage ../development/python-modules/mitmproxy { };
|
||||
|
||||
mixpanel = callPackage ../development/python-modules/mixpanel { };
|
||||
|
||||
mkl-service = callPackage ../development/python-modules/mkl-service { };
|
||||
|
Loading…
Reference in New Issue
Block a user