1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 versionCheckHook,
6}:
7
8buildGoModule (finalAttrs: {
9 pname = "ddosify";
10 version = "2.6.0";
11
12 src = fetchFromGitHub {
13 owner = "ddosify";
14 repo = "ddosify";
15 tag = "selfhosted-${finalAttrs.version}";
16 hash = "sha256-EPbpBCSaUVVhxGlj7gRqwHLuj5p6563iiARqkEjA6Rk=";
17 };
18
19 vendorHash = "sha256-Wg4JzA2aEwNBsDrkauFUb9AS38ITLBGex9QHzDcdpoM=";
20
21 sourceRoot = "${finalAttrs.src.name}/ddosify_engine";
22
23 ldflags = [
24 "-s"
25 "-w"
26 "-X=main.GitVersion=${finalAttrs.version}"
27 "-X=main.GitCommit=unknown"
28 "-X=main.BuildDate=unknown"
29 ];
30
31 # TestCreateHammerMultipartPayload error occurred - Get "https://upload.wikimedia.org/wikipedia/commons/b/bd/Test.svg"
32 doCheck = false;
33
34 doInstallCheck = true;
35
36 nativeInstallCheckInputs = [ versionCheckHook ];
37
38 versionCheckProgramArg = "-version";
39
40 meta = {
41 description = "High-performance load testing tool, written in Golang";
42 mainProgram = "ddosify";
43 homepage = "https://ddosify.com/";
44 changelog = "https://github.com/ddosify/ddosify/releases/tag/selfhosted-${finalAttrs.version}";
45 license = lib.licenses.agpl3Plus;
46 maintainers = with lib.maintainers; [ bryanasdev000 ];
47 };
48})