nixos-config/configs/nixvim/trovebelt/modules/setups/debugging.nix
2024-02-14 18:59:03 +08:00

44 lines
961 B
Nix

{ config, lib, ... }:
let
nixvimCfg = config.nixvimConfigs.trovebelt;
cfg = nixvimCfg.setups.debugging;
in
{
options.nixvimConfigs.trovebelt.setups.debugging.enable =
lib.mkEnableOption "debugging setup";
config = lib.mkIf cfg.enable {
# The main star of the show.
plugins.dap.enable = true;
# All of the configurations that we typically/rarely needed.
plugins.dap.adapters.executables = {
gdb = {
command = "gdb";
args = [ "-i" "dap" ];
};
lldb = {
command = "lldb-dap";
name = "lldb";
};
dart = {
command = "dart";
args = [ "debug_adapter" ];
};
flutter = {
command = "flutter";
args = [ "debug_adapter" ];
};
};
# Enable all of the debugging extensoins.
plugins.dap.extensions.dap-go.enable = true;
plugins.dap.extensions.dap-python.enable = true;
plugins.rustaceanvim.enable = true;
};
}