tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
armitage: convert to gradle setup hook
chayleaf
2 years ago
5969a69a
5e0160dc
+81
-34
2 changed files
expand all
collapse all
unified
split
pkgs
by-name
ar
armitage
deps.json
package.nix
+73
pkgs/by-name/ar/armitage/deps.json
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{
2
+
"!comment": "This is a nixpkgs Gradle dependency lockfile. For more details, refer to the Gradle section in the nixpkgs manual.",
3
+
"!version": 1,
4
+
"https://repo.maven.apache.org/maven2": {
5
+
"com/googlecode/json-simple#json-simple/1.1.1": {
6
+
"jar": "sha256-TmlpaJK4i0HFXUmrL9zCHurZK/VKzFiMAFBZbDt1GZw=",
7
+
"pom": "sha256-Zl9jWQ3vtj1irdIdNSU2LPk3z2ocBeSwFFuujailf4M="
8
+
},
9
+
"org/apiguardian#apiguardian-api/1.1.0": {
10
+
"jar": "sha256-qarp/4rj4XoqGPeRdegrFiZ8JG+708qd+7spCwjc/dQ=",
11
+
"pom": "sha256-qUW5y1zZt3sscRhE5lnEPsBw71nZ9Qn6n0wYYbSGJxE="
12
+
},
13
+
"org/javassist#javassist/3.28.0-GA": {
14
+
"jar": "sha256-V9Cp6ShvgvTqqFESUYaZf4Eb784OIGD/ChWnf1qd2ac=",
15
+
"pom": "sha256-w2p8E9o6SFKqiBvfnbYLnk0a8UbsKvtTmPltWYP21d0="
16
+
},
17
+
"org/junit#junit-bom/5.7.0": {
18
+
"module": "sha256-Jd5FSzrdZ2VNZpG1PedZO1ApZ7X/VJVHsQTXlh8aUr0=",
19
+
"pom": "sha256-NfsV+NC+4rWQCiKDJ2I2ZVL5o0nFbO1guhI85Hc4/wA="
20
+
},
21
+
"org/junit/jupiter#junit-jupiter-api/5.7.0": {
22
+
"jar": "sha256-sD944Nru0td6Cvm81mK0zblpP37nLgGlObUIuExj0YI=",
23
+
"module": "sha256-0ae65s1ErW2WcVJhQQ7vIziklENtZnKA0Tc6R8F+JBw=",
24
+
"pom": "sha256-oPgj1RPI1GkpNfJML+bnfMSnthR6nopRj3IuULv4YTg="
25
+
},
26
+
"org/junit/jupiter#junit-jupiter-engine/5.7.0": {
27
+
"jar": "sha256-36Jq+UZErCYS3eZiWFL8tVCg0hyqJDJX3lTLpzi6h68=",
28
+
"module": "sha256-w2vaSCKO71xAzcmp1jA7uEg4LNsIhLNnfUkYK07HoaQ=",
29
+
"pom": "sha256-twLiUIddMx7jxriPNymfvpUfQ5kvSy5KjxROLkzyx+g="
30
+
},
31
+
"org/junit/platform#junit-platform-commons/1.7.0": {
32
+
"jar": "sha256-UzDuh8x1hubiUXWjTpJRYk/xL/UlJp00FdC0ylGbb+o=",
33
+
"module": "sha256-sKXHobfkCdH1zJY9muocd8NLkOFj1oQqRInGqgf/juI=",
34
+
"pom": "sha256-DNfE+b7mWZEqwdzkbxI80G9Au7c6sxa9lBHHkuPGgKI="
35
+
},
36
+
"org/junit/platform#junit-platform-engine/1.7.0": {
37
+
"jar": "sha256-dfIaINxZSv3IdXNnJbQIzsbQNEh00p80st0wdVACNvI=",
38
+
"module": "sha256-ZRCp+ogc70LUFIVTjbxUdJQm2x4LFOxDORXqXyRIB5o=",
39
+
"pom": "sha256-IluZxQMv0cuM7Noui1p1Jtal+B+5iimldVf39czanRI="
40
+
},
41
+
"org/msgpack#msgpack/0.6.12": {
42
+
"jar": "sha256-4JymXYUgSI6ApdxCaEior8z9QPSi6zuWRgQlldO9m14=",
43
+
"pom": "sha256-lEl9jwL43oFZpbfVE24BD1f12axliGES7O2GlcUFbe4="
44
+
},
45
+
"org/opentest4j#opentest4j/1.2.0": {
46
+
"jar": "sha256-WIEt5giY2Xb7ge87YtoFxmBMGP1KJJ9QRCgkefwoavI=",
47
+
"pom": "sha256-qW5nGBbB/4gDvex0ySQfAlvfsnfaXStO4CJmQFk2+ZQ="
48
+
},
49
+
"org/postgresql#pgjdbc-core-parent/1.1.2": {
50
+
"pom": "sha256-K5B1vOVrI8vfRwy80/7rwgivBf1XfNxcmjbadTRsZ50="
51
+
},
52
+
"org/postgresql#pgjdbc-core-parent/1.1.5": {
53
+
"pom": "sha256-XtK0rdiF6e4eY3opfLNHlPT/LtVCb/zStL3N1uJiPrc="
54
+
},
55
+
"org/postgresql#pgjdbc-versions/1.1.2": {
56
+
"pom": "sha256-FJIccV6cNLFOpOtn1O6cPUGtxYj1639F01f89xgv3P4="
57
+
},
58
+
"org/postgresql#pgjdbc-versions/1.1.5": {
59
+
"pom": "sha256-fktof5IZOQGPdV6TUwtvO/pkOH9zJIiTXAsFo2PEkFw="
60
+
},
61
+
"org/postgresql#postgresql/42.2.5": {
62
+
"jar": "sha256-f/pG+MYZN3zevNF3IbayHs9mWYUBeflv7D0QNc9aDNw=",
63
+
"pom": "sha256-QeLEYQz6+o+46jOfZeUECMDzGDV6eKP0hOKi8bUq0ew="
64
+
},
65
+
"org/postgresql#postgresql/9.4.1212": {
66
+
"jar": "sha256-DLKhWL4xrPIY4KThjI89usaKO8NIBkaHc/xECUsMNl0=",
67
+
"pom": "sha256-3WEi1R5mRIHFMgl7hzPLJAW6oqrhsgqOrr6jlLErb1A="
68
+
},
69
+
"org/sonatype/oss#oss-parent/7": {
70
+
"pom": "sha256-tR+IZ8kranIkmVV/w6H96ne9+e9XRyL+kM5DailVlFQ="
71
+
}
72
+
}
73
+
}
+8
-34
pkgs/by-name/ar/armitage/package.nix
···
4
, fetchFromGitHub
5
, jdk11
6
, gradle_6
7
-
, perl
8
, metasploit
9
, makeWrapper
10
, makeDesktopItem
···
15
let
16
pname = "armitage";
17
version = "unstable-2022-12-05";
0
0
18
19
src = fetchFromGitHub {
20
owner = "r00t0v3rr1d3";
···
46
})
47
];
48
49
-
deps = stdenv.mkDerivation {
50
-
pname = "${pname}-deps";
51
-
inherit version src patches;
52
-
nativeBuildInputs = [ gradle_6 perl ];
53
-
buildPhase = ''
54
-
export GRADLE_USER_HOME=$(mktemp -d)
55
-
gradle --no-daemon assemble
56
-
'';
57
-
# perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
58
-
installPhase = ''
59
-
find $GRADLE_USER_HOME -type f -regex '.*\.\(jar\|pom\)' \
60
-
| perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \
61
-
| sh
62
-
rm -rf $out/tmp
63
-
'';
64
-
outputHashAlgo = "sha256";
65
-
outputHashMode = "recursive";
66
-
outputHash = "sha256-6o3HlBfmpjpmMeiRydOme6fJc8caq8EBRVf3nJq9vqo=";
67
-
};
68
in
69
stdenv.mkDerivation (finalAttrs: {
70
inherit pname version src patches;
71
-
72
-
__darwinAllowLocalNetworking = true;
73
74
desktopItems = [
75
(makeDesktopItem {
···
85
86
nativeBuildInputs = [
87
jdk11
88
-
gradle_6
89
makeWrapper
90
copyDesktopItems
91
] ++ lib.optionals stdenv.isDarwin [
92
writeDarwinBundle
93
];
94
95
-
buildPhase = ''
96
-
runHook preBuild
0
0
97
98
-
export GRADLE_USER_HOME=$(mktemp -d)
99
-
substituteInPlace armitage/build.gradle \
100
-
--replace 'mavenCentral()' 'mavenLocal(); maven { url uri("${deps}") }'
101
-
substituteInPlace cortana/build.gradle \
102
-
--replace 'mavenCentral()' 'mavenLocal(); maven { url uri("${deps}") }'
103
-
gradle --offline --no-daemon assemble
104
-
105
-
runHook postBuild
106
-
'';
107
108
installPhase = ''
109
runHook preInstall
···
4
, fetchFromGitHub
5
, jdk11
6
, gradle_6
0
7
, metasploit
8
, makeWrapper
9
, makeDesktopItem
···
14
let
15
pname = "armitage";
16
version = "unstable-2022-12-05";
17
+
18
+
gradle = gradle_6;
19
20
src = fetchFromGitHub {
21
owner = "r00t0v3rr1d3";
···
47
})
48
];
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
in
51
stdenv.mkDerivation (finalAttrs: {
52
inherit pname version src patches;
0
0
53
54
desktopItems = [
55
(makeDesktopItem {
···
65
66
nativeBuildInputs = [
67
jdk11
68
+
gradle
69
makeWrapper
70
copyDesktopItems
71
] ++ lib.optionals stdenv.isDarwin [
72
writeDarwinBundle
73
];
74
75
+
mitmCache = gradle.fetchDeps {
76
+
inherit pname;
77
+
data = ./deps.json;
78
+
};
79
80
+
__darwinAllowLocalNetworking = true;
0
0
0
0
0
0
0
0
81
82
installPhase = ''
83
runHook preInstall