diff --git a/users/home-manager/foo-dogsquared/default.nix b/users/home-manager/foo-dogsquared/default.nix index f3b1106f..076bd285 100644 --- a/users/home-manager/foo-dogsquared/default.nix +++ b/users/home-manager/foo-dogsquared/default.nix @@ -20,6 +20,7 @@ research.enable = true; shell.enable = true; terminal-multiplexer.enable = true; + vs-code.enable = true; }; setups = { @@ -46,13 +47,6 @@ hledger # Trying to be a good accountant. ]; - # My custom modules. - profiles = { - editors = { - vscode.enable = true; - }; - }; - home.stateVersion = "23.11"; xdg.configFile = { diff --git a/users/home-manager/foo-dogsquared/modules/default.nix b/users/home-manager/foo-dogsquared/modules/default.nix index cc4a0d6b..088da1bf 100644 --- a/users/home-manager/foo-dogsquared/modules/default.nix +++ b/users/home-manager/foo-dogsquared/modules/default.nix @@ -11,6 +11,7 @@ ./programs/research.nix ./programs/shell.nix ./programs/terminal-multiplexer.nix + ./programs/vs-code.nix ./setups/desktop.nix ./setups/fonts.nix diff --git a/users/home-manager/foo-dogsquared/modules/programs/vs-code.nix b/users/home-manager/foo-dogsquared/modules/programs/vs-code.nix new file mode 100644 index 00000000..6f5a7655 --- /dev/null +++ b/users/home-manager/foo-dogsquared/modules/programs/vs-code.nix @@ -0,0 +1,36 @@ +{ config, lib, pkgs, ... }: + +let + userCfg = config.users.foo-dogsquared; + cfg = userCfg.programs.vs-code; +in +{ + options.users.foo-dogsquared.programs.vs-code.enable = + lib.mkEnableOption "foo-dogsquared's Visual Studio Code setup"; + + config = lib.mkIf cfg.enable { + programs.vscode = { + extensions = with pkgs; [ + # Additional language support. + bbenoist.nix + graphql.vscode-graphql + ms-vscode.cmake-tools + ms-vscode.cpptools + ms-vscode.powershell + + # Extra editor niceties. + eamodio.gitlens + mkhl.direnv + usernamehw.errorlens + vadimcn.vscode-lldb + + # The other niceties. + editorconfig.editorconfig + ]; + + settings = { + "extensions.ignoreRecommendations" = true; + }; + }; + }; +}