aboutsummaryrefslogtreecommitdiff
path: root/modules/programs/vscode.nix
diff options
context:
space:
mode:
authorschererleander <leander@schererleander.de>2026-02-05 12:03:07 +0100
committerschererleander <leander@schererleander.de>2026-02-05 15:19:41 +0100
commit3b13d9a2a367db84d48940460532c17a374bb488 (patch)
tree599110a39c4baecf3991fe9a58d0103a43c38896 /modules/programs/vscode.nix
parent46aa4842b98d9215baca00060c233f386a0c2188 (diff)
feat(modules): use dendritic pattern
Diffstat (limited to 'modules/programs/vscode.nix')
-rw-r--r--modules/programs/vscode.nix63
1 files changed, 63 insertions, 0 deletions
diff --git a/modules/programs/vscode.nix b/modules/programs/vscode.nix
new file mode 100644
index 0000000..c10fa6b
--- /dev/null
+++ b/modules/programs/vscode.nix
@@ -0,0 +1,63 @@
+{
+ flake.modules.homeManager.vscode =
+ {
+ config,
+ lib,
+ pkgs,
+ ...
+ }:
+ let
+ inherit (lib) optionals;
+ in
+ {
+ programs.vscode = {
+ enable = true;
+ package = pkgs.vscode;
+ mutableExtensionsDir = false;
+ profiles.default = {
+ enableUpdateCheck = true;
+ enableExtensionUpdateCheck = true;
+
+ userSettings = {
+ "update.mode" = "none";
+ "workbench.colorTheme" = "Minimal";
+ "editor.fontFamily" = "monospace";
+ "editor.tabSize" = 2;
+ "editor.minimap.enabled" = false;
+ "terminal.integrated.cursorStyle" = "underline";
+ "terminal.integrated.cursorStyleInactive" = "underline";
+ "terminal.integrated.fontFamily" = "monospace";
+ "terminal.integrated.fontSize" = 13;
+ "git.autofetch" = true;
+ "window.controlsStyle" = "custom";
+ };
+
+ extensions =
+ with pkgs.vscode-extensions;
+ [
+ github.copilot
+ adpyke.codesnap
+ esbenp.prettier-vscode
+ ]
+ ++ (optionals false [ ms-vscode.cmake-tools ])
+ ++ (optionals false [ ms-azuretools.vscode-docker ])
+ ++ (optionals false [ ms-python.python ])
+ ++ (optionals false [ golang.go ])
+ ++ (optionals false [ rust-lang.rust-analyzer ])
+ ++ (optionals false [ vscjava.vscode-maven ])
+ ++ (optionals false [ sumneko.lua ])
+ ++ (optionals false [ bradlc.vscode-tailwindcss ])
+ ++ (optionals true (
+ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
+ {
+ name = "minimalist-dark";
+ publisher = "nichabosh";
+ version = "1.0.0";
+ sha256 = "sha256-lw+Scfada6DycLdRT2Cz+Fd12JucglIrw3uRd2ZhabQ=";
+ }
+ ]
+ ));
+ };
+ };
+ };
+}