{ pkgs, pkgsUnstable, ... }:

{
  programs.vscode = {
    enable = true;

    package = pkgsUnstable.vscode.fhs;
    profiles.default.extensions = with pkgs.vscode-extensions; [
      ms-dotnettools.csharp
      ms-dotnettools.csdevkit
      ms-dotnettools.vscode-dotnet-runtime
      mkhl.direnv   # Direnv integration for VSCode
      catppuccin.catppuccin-vsc
      bmewburn.vscode-intelephense-client
      continue.continue
    ];

    profiles.default.userSettings = {
      "editor.lineNumbers" = "relative";
      "workbench.colorTheme" = "Catppuccin Mocha";
      "workbench.editor.enablePreview" = false;
      "direnv.restart.automatic" = true;
      "terminal.integrated.defaultProfile.linux" = "zsh";
      "terminal.integrated.profiles.linux" = {
        zsh = {
          path = pkgs.zsh;
        };
      };
    };
  };
}
