Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 30 additions & 12 deletions pkgs/by-name/ex/exegol/package.nix
Original file line number Diff line number Diff line change
@@ -1,38 +1,47 @@
{
fetchPypi,
lib,
fetchFromGitHub,
python3Packages,
xorg,
}:
python3Packages.buildPythonApplication rec {
pname = "exegol";
version = "4.3.11";
version = "5.1.1";
pyproject = true;

src = fetchPypi {
inherit pname version;
hash = "sha256-+LnZSFRW7EvG+cPwMStgO6qD4AjOGkLzCarXBrW3Aak=";
src = fetchFromGitHub {
owner = "ThePorgs";
repo = "Exegol";
tag = version;
hash = "sha256-q84uWxVooQ+tFA2NhQ5N30h8LPhT+fJfxVmcpMzOQVk=";
};

build-system = with python3Packages; [ pdm-backend ];

pythonRelaxDeps = [
"rich"
"argcomplete"
"supabase"
];

dependencies =
with python3Packages;
[
pyyaml
gitpython
argcomplete
cryptography
docker
gitpython
ifaddr
pydantic
pyjwt
pyyaml
requests
rich
argcomplete
tzlocal
supabase
]
++ [ xorg.xhost ];
++ pyjwt.optional-dependencies.crypto
++ [ xorg.xhost ]
++ lib.optional (!stdenv.hostPlatform.isLinux) tzlocal;

doCheck = true;

Expand All @@ -49,8 +58,17 @@ python3Packages.buildPythonApplication rec {
stylish macOS users and corporate Windows pros to UNIX-like power users.
'';
homepage = "https://github.com/ThePorgs/Exegol";
changelog = "https://github.com/ThePorgs/Exegol/releases/tag/${version}";
license = lib.licenses.gpl3Only;
changelog = "https://github.com/ThePorgs/Exegol/releases/tag/${src.tag}";
license = with lib.licenses; [
gpl3Only
{
fullName = "Exegol Software License (ESL) - Version 1.0";
url = "https://docs.exegol.com/legal/software-license";
# Please use exegol4 if you prefer to avoid the unfree version of Exegol.
free = false;
redistributable = false;
}
];
mainProgram = "exegol";
maintainers = with lib.maintainers; [
_0b11stan
Expand Down
60 changes: 60 additions & 0 deletions pkgs/by-name/ex/exegol4/package.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
{
fetchPypi,
lib,
python3Packages,
xorg,
}:
python3Packages.buildPythonApplication rec {
pname = "exegol";
version = "4.3.11";
pyproject = true;

src = fetchPypi {
inherit pname version;
hash = "sha256-+LnZSFRW7EvG+cPwMStgO6qD4AjOGkLzCarXBrW3Aak=";
};

build-system = with python3Packages; [ pdm-backend ];

pythonRelaxDeps = [
"rich"
"argcomplete"
];

dependencies =
with python3Packages;
[
pyyaml
gitpython
docker
requests
rich
argcomplete
tzlocal
]
++ [ xorg.xhost ];

doCheck = true;

pythonImportsCheck = [ "exegol" ];

meta = {
description = "Fully featured and community-driven hacking environment";
longDescription = ''
Exegol is a community-driven hacking environment, powerful and yet
simple enough to be used by anyone in day to day engagements. Exegol is
the best solution to deploy powerful hacking environments securely,
easily, professionally. Exegol fits pentesters, CTF players, bug bounty
hunters, researchers, beginners and advanced users, defenders, from
stylish macOS users and corporate Windows pros to UNIX-like power users.
'';
homepage = "https://github.com/ThePorgs/Exegol";
changelog = "https://github.com/ThePorgs/Exegol/releases/tag/${version}";
license = lib.licenses.gpl3Only;
mainProgram = "exegol";
maintainers = with lib.maintainers; [
_0b11stan
charB66
];
};
}
Loading