diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index df560b7f3e23..444b77899be1 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -22551,6 +22551,13 @@ githubId = 47164123; name = "Spoonbaker"; }; + sportshead = { + email = "me@sportshead.dev"; + github = "sportshead"; + githubId = 32637656; + name = "sportshead"; + keys = [ { fingerprint = "A6B6 D031 782E BDF7 631A 8E7E A874 DB2C BFD3 CFD0"; } ]; + }; sprock = { email = "rmason@mun.ca"; github = "sprock"; diff --git a/pkgs/by-name/rp/rp/package.nix b/pkgs/by-name/rp/rp/package.nix new file mode 100644 index 000000000000..7bf1a58aaf73 --- /dev/null +++ b/pkgs/by-name/rp/rp/package.nix @@ -0,0 +1,39 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + ninja, +}: +stdenv.mkDerivation rec { + pname = "rp"; + version = "2.1.4"; + + nativeBuildInputs = [ + cmake + ninja + ]; + buildInputs = lib.optionals (stdenv.isLinux) [ stdenv.cc.libc.static ]; + + src = fetchFromGitHub { + owner = "0vercl0k"; + repo = "rp"; + rev = "a60f8117443e421bb572df890341b5a0f982c267"; + hash = "sha256-lkyuV+yC3NTsdipyJkoxgh1N8/+15N15nQpjItUgyb0="; + }; + sourceRoot = "${src.name}/src"; + + installPhase = '' + mkdir -p $out/bin + cp rp-${if stdenv.isDarwin then "osx" else "lin"} $out/bin/rp + ''; + + meta = with lib; { + description = "Fast C++ ROP gadget finder for PE/ELF/Mach-O x86/x64/ARM/ARM64 binaries"; + homepage = "https://github.com/0vercl0k/rp"; + license = licenses.mit; + maintainers = with maintainers; [ sportshead ]; + platforms = platforms.all; + mainProgram = "rp"; + }; +}