Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
51 lines
1.3 KiB
Nix
51 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchFromGitHub,
|
|
gdb,
|
|
makeWrapper,
|
|
python3Packages,
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
name = "gdb-dashboard";
|
|
version = "0.17.4";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "cyrus-and";
|
|
repo = "gdb-dashboard";
|
|
tag = "v${finalAttrs.version}";
|
|
hash = "sha256-xoBkAFwkbaAsvgPwGwe1JxE1C8gPR6GP1iXeNKK5Z70=";
|
|
};
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
propagatedBuildInputs = [ python3Packages.pygments ];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/share/gdb-dashboard
|
|
cp -r .gdbinit $out/share/gdb-dashboard/gdbinit
|
|
makeWrapper ${gdb}/bin/gdb $out/bin/gdb-dashboard \
|
|
--add-flags "-q -x $out/share/gdb-dashboard/gdbinit"
|
|
|
|
p=$(toPythonPath ${python3Packages.pygments})
|
|
sed -i "/import os/a import os; import sys; sys.path[0:0] = '$p'.split(':')" \
|
|
$out/share/gdb-dashboard/gdbinit
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
# there are no tests as this is a wrapper
|
|
|
|
meta = {
|
|
description = "Modular visual interface for GDB in Python";
|
|
homepage = "https://github.com/cyrus-and/gdb-dashboard";
|
|
downloadPage = "https://github.com/cyrus-and/gdb-dashboard";
|
|
changelog = "https://github.com/cyrus-and/gdb-dashboard/releases/tag/${finalAttrs.version}";
|
|
license = lib.licenses.mit;
|
|
maintainers = with lib.maintainers; [ ethancedwards8 ];
|
|
};
|
|
})
|