python3Packages.pwntools: Patch check for gdb-multiarch

Signed-off-by: Pamplemousse <xav.maso@gmail.com>
This commit is contained in:
Pamplemousse 2021-05-13 10:27:27 -07:00 committed by Benno Fünfstück
parent 4db7d30365
commit ec4814ae69

View file

@ -21,6 +21,9 @@
, installShellFiles
}:
let
debuggerName = lib.strings.getName debugger;
in
buildPythonPackage rec {
version = "4.3.1";
pname = "pwntools";
@ -30,11 +33,15 @@ buildPythonPackage rec {
sha256 = "12ja913kz8wl4afrmpzxh9fx6j7rcwc2vqzkvfr1fxn42gkqhqf4";
};
# Upstream has set an upper bound on unicorn because of https://github.com/Gallopsled/pwntools/issues/1538,
# but since that is a niche use case and it requires extra work to get unicorn 1.0.2rc3 to work we relax
# the bound here. Check if this is still necessary when updating!
postPatch = ''
# Upstream has set an upper bound on unicorn because of https://github.com/Gallopsled/pwntools/issues/1538,
# but since that is a niche use case and it requires extra work to get unicorn 1.0.2rc3 to work we relax
# the bound here. Check if this is still necessary when updating!
sed -i 's/unicorn>=1.0.2rc1,<1.0.2rc4/unicorn>=1.0.2rc1/' setup.py
# Upstream hardcoded the check for the command `gdb-multiarch`;
# Forcefully use the provided debugger, as `gdb` (hence `pwndbg`) is built with multiarch in `nixpkgs`.
sed -i 's/gdb-multiarch/${debuggerName}/' pwnlib/gdb.py
'';
nativeBuildInputs = [
@ -68,7 +75,7 @@ buildPythonPackage rec {
postFixup = ''
mkdir -p "$out/bin"
makeWrapper "${debugger}/bin/${lib.strings.getName debugger}" "$out/bin/pwntools-gdb"
makeWrapper "${debugger}/bin/${debuggerName}" "$out/bin/pwntools-gdb"
'';
meta = with lib; {