1{ lib, fetchFromGitHub, python3Packages }:
2
3python3Packages.buildPythonApplication rec {
4 version = "1.0.1";
5 pname = "ipgrep";
6
7 disabled = python3Packages.isPy27;
8
9 src = fetchFromGitHub {
10 owner = "jedisct1";
11 repo = pname;
12 rev = version;
13 hash = "sha256-NrhcUFQM+L66KaDRRpAoC+z5s54a+1fqEepTRXVZ5Qs=";
14 };
15
16 patchPhase = ''
17 mkdir -p ${pname}
18 substituteInPlace setup.py \
19 --replace "'scripts': []" "'scripts': { '${pname}.py' }"
20 '';
21
22 propagatedBuildInputs = with python3Packages; [
23 pycares
24 urllib3
25 requests
26 ];
27
28 meta = with lib; {
29 description = "Extract, defang, resolve names and IPs from text";
30 longDescription = ''
31 ipgrep extracts possibly obfuscated host names and IP addresses
32 from text, resolves host names, and prints them, sorted by ASN.
33 '';
34 license = licenses.mit;
35 maintainers = with maintainers; [ leenaars ];
36 platforms = platforms.all;
37 };
38}