fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1{ lib, mkDerivation, fetchFromGitHub, cmake, pkg-config, boost, capstone
2, double-conversion, graphviz, qtxmlpatterns }:
3
4mkDerivation rec {
5 pname = "edb";
6 version = "1.3.0";
7
8 src = fetchFromGitHub {
9 owner = "eteran";
10 repo = "edb-debugger";
11 rev = "1.3.0";
12 fetchSubmodules = true;
13 sha256 = "fFUau8XnsRFjC83HEsqyhrwCCBOfDmV6oACf3txm7O8=";
14 };
15
16 nativeBuildInputs = [ cmake pkg-config ];
17
18 buildInputs = [ boost.dev capstone double-conversion graphviz qtxmlpatterns ];
19
20 postPatch = ''
21 # Remove CMAKE_INSTALL_PREFIX from DEFAULT_PLUGIN_PATH otherwise the nix store path will appear twice.
22 substituteInPlace ./src/CMakeLists.txt --replace \
23 '-DDEFAULT_PLUGIN_PATH=\"''${CMAKE_INSTALL_PREFIX}/''${CMAKE_INSTALL_LIBDIR}/edb\"' \
24 '-DDEFAULT_PLUGIN_PATH=\"''${CMAKE_INSTALL_LIBDIR}/edb\"'
25
26 # The build script checks for the presence of .git to determine whether
27 # submodules were fetched and will throw an error if it's not there.
28 # Avoid using leaveDotGit in the fetchFromGitHub options as it is non-deterministic.
29 mkdir -p src/qhexview/.git
30
31 # Change default optional terminal program path to one that is more likely to work on NixOS.
32 substituteInPlace ./src/Configuration.cpp --replace "/usr/bin/xterm" "xterm";
33 '';
34
35 meta = with lib; {
36 description = "Cross platform AArch32/x86/x86-64 debugger";
37 homepage = "https://github.com/eteran/edb-debugger";
38 license = licenses.gpl2Plus;
39 maintainers = with maintainers; [ lihop maxxk ];
40 platforms = [ "x86_64-linux" ];
41 };
42}