1{
2 lib,
3 python3,
4 fetchFromGitHub,
5}:
6
7python3.pkgs.buildPythonApplication rec {
8 pname = "ec2stepshell";
9 version = "0-unstable-2023-04-07";
10 format = "pyproject";
11
12 src = fetchFromGitHub {
13 owner = "saw-your-packet";
14 repo = "EC2StepShell";
15 rev = "ab1298fa7f2650de711e86e870a693dcce0e1935";
16 hash = "sha256-zy33CgGwa2pBYouqaJ1LM6uRIh3Q1uxi2zNXpDNPsuQ=";
17 };
18
19 postPatch = ''
20 # https://github.com/saw-your-packet/EC2StepShell/pull/1
21 substituteInPlace pyproject.toml \
22 --replace "realpython" "ec2stepshell"
23 '';
24
25 nativeBuildInputs = with python3.pkgs; [
26 setuptools
27 ];
28
29 propagatedBuildInputs = with python3.pkgs; [
30 boto3
31 colorama
32 pyfiglet
33 termcolor
34 ];
35
36 pythonImportsCheck = [
37 "ec2stepshell"
38 ];
39
40 meta = {
41 description = "AWS post-exploitation tool";
42 mainProgram = "ec2stepshell";
43 homepage = "https://github.com/saw-your-packet/EC2StepShell";
44 changelog = "https://github.com/saw-your-packet/EC2StepShell/blob/${version}/CHANGELOG.txt";
45 license = lib.licenses.mit;
46 maintainers = with lib.maintainers; [ fab ];
47 };
48}