From 451b562fd489a25c167e1887821ca8e37731307b Mon Sep 17 00:00:00 2001 From: oddlama Date: Fri, 15 Sep 2023 18:07:55 +0200 Subject: [PATCH] chore: let gdb use a single history file --- users/myuser/dev/gdb.nix | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/users/myuser/dev/gdb.nix b/users/myuser/dev/gdb.nix index 5373dda..beb1faf 100644 --- a/users/myuser/dev/gdb.nix +++ b/users/myuser/dev/gdb.nix @@ -1,15 +1,19 @@ -{ pkgs, ... }: let +{pkgs, ...}: let # pwndbg wraps a gdb binary for us, but we want debuginfod in there too. # Also make it the default gdb. - pwndbgWithDebuginfod = (pkgs.pwndbg.override { - gdb = pkgs.gdb.override { - enableDebuginfod = true; - }; - }).overrideAttrs (_finalAttrs: previousAttrs: { - installPhase = previousAttrs.installPhase + '' - ln -s $out/bin/pwndbg $out/bin/gdb - ''; - }); + pwndbgWithDebuginfod = + (pkgs.pwndbg.override { + gdb = pkgs.gdb.override { + enableDebuginfod = true; + }; + }) + .overrideAttrs (_finalAttrs: previousAttrs: { + installPhase = + previousAttrs.installPhase + + '' + ln -s $out/bin/pwndbg $out/bin/gdb + ''; + }); in { home.packages = [ pwndbgWithDebuginfod @@ -19,11 +23,18 @@ in { home.file.gdbinit = { target = ".gdbinit"; text = '' - set debuginfod enabled on set auto-load safe-path / - set disassembly-flavor intel + set debuginfod enabled on + set history save on + set history filename ~/.local/share/gdb/history + + set disassembly-flavor intel set print pretty on ''; }; + + home.persistence."/state".directories = [ + ".local/share/gdb" + ]; }