{ lib, fetchPypi, stdenvNoCC, buildPythonPackage, }: let version = "17.5.1"; format = "wheel"; inherit (stdenvNoCC.hostPlatform) system; # https://pypi.org/project/frida/#files pypiMeta = { x86_64-linux = { hash = "sha256-gUYHLjKLoUI/aXzB+aU5yvfmObcA9hctkBqLgZxHvi0="; platform = "manylinux1_x86_64"; }; aarch64-linux = { hash = "sha256-zU9mmxU8WWs2dG3lHnSiY0oTDN2tUFTMolV22SHtBbc="; platform = "manylinux2014_aarch64"; }; x86_64-darwin = { hash = "sha256-hgsUQHS/DCVXSMm8ViC4zd/UVvEqYH7uwedv4ag48Mc="; platform = "macosx_10_13_x86_64"; }; aarch64-darwin = { hash = "sha256-HgjAVeACzWis0WFgf/D40GAqMbqSmZ8XBilgID3Yk5A="; platform = "macosx_11_0_arm64"; }; } .${system} or (throw "Unsupported system: ${system}"); in buildPythonPackage { pname = "frida-python"; inherit version format; src = fetchPypi { pname = "frida"; inherit version format; inherit (pypiMeta) hash platform; abi = "abi3"; python = "cp37"; dist = "cp37"; }; pythonImportsCheck = [ "frida" "frida._frida" ]; meta = { description = "Dynamic instrumentation toolkit for developers, reverse-engineers, and security researchers (Python bindings)"; homepage = "https://www.frida.re"; license = with lib.licenses; [ lgpl2Plus wxWindowsException31 ]; maintainers = with lib.maintainers; [ s1341 ]; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; }; }