Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 meson,
6 pkg-config,
7 ninja,
8 rizin,
9 openssl,
10}:
11
12let
13 version = "0.8.0";
14
15 libquickjs = fetchFromGitHub {
16 owner = "quickjs-ng";
17 repo = "quickjs";
18 tag = "v${version}";
19 hash = "sha256-o0Cpy+20EqNdNENaYlasJcKIGU7W4RYBcTMsQwFTUNc=";
20 };
21in
22stdenv.mkDerivation (finalAttrs: {
23 pname = "jsdec";
24 version = version;
25
26 src = fetchFromGitHub {
27 owner = "rizinorg";
28 repo = "jsdec";
29 rev = "v${version}";
30 hash = "sha256-Xc8FMKSGdjrp288u49R6YC0xiynwHeoZe2P/UqnfsFU=";
31 };
32
33 postUnpack = ''
34 cp -r --no-preserve=mode ${libquickjs} $sourceRoot/subprojects/libquickjs
35 '';
36
37 postPatch = ''
38 cp subprojects/packagefiles/libquickjs/* subprojects/libquickjs
39 '';
40
41 nativeBuildInputs = [
42 meson
43 ninja
44 pkg-config
45 ];
46 buildInputs = [
47 openssl
48 rizin
49 ];
50
51 meta = with lib; {
52 description = "Simple decompiler for Rizin";
53 homepage = finalAttrs.src.meta.homepage;
54 changelog = "${finalAttrs.src.meta.homepage}/releases/tag/${finalAttrs.src.rev}";
55 license = with licenses; [
56 asl20
57 bsd3
58 mit
59 ];
60 maintainers = with maintainers; [ chayleaf ];
61 };
62})