From 2e1a707c5ef0cda159d910b842006c9f56f5eb43 Mon Sep 17 00:00:00 2001 From: SebastianStork Date: Wed, 16 Jul 2025 21:41:48 +0200 Subject: [PATCH] vscode: switch settings file from tmpfile to symlink --- modules/home/programs/vscode.nix | 90 +++++++++++++++----------------- 1 file changed, 41 insertions(+), 49 deletions(-) diff --git a/modules/home/programs/vscode.nix b/modules/home/programs/vscode.nix index 82744f3..fa5d74c 100644 --- a/modules/home/programs/vscode.nix +++ b/modules/home/programs/vscode.nix @@ -13,56 +13,48 @@ programs.vscode = { enable = true; package = pkgs-unstable.vscodium; - profiles.default.extensions = - let - inherit (inputs.nix-vscode-extensions.extensions.${pkgs.system}) open-vsx; - in - [ - open-vsx.jnoortheen.nix-ide - open-vsx.aaron-bond.better-comments - open-vsx.llvm-vs-code-extensions.vscode-clangd - open-vsx.nefrob.vscode-just-syntax + profiles.default = { + extensions = + let + inherit (inputs.nix-vscode-extensions.extensions.${pkgs.system}) open-vsx; + in + [ + open-vsx.jnoortheen.nix-ide + open-vsx.aaron-bond.better-comments + open-vsx.llvm-vs-code-extensions.vscode-clangd + open-vsx.nefrob.vscode-just-syntax - open-vsx.github.github-vscode-theme - open-vsx.pkief.material-icon-theme - ]; + open-vsx.github.github-vscode-theme + open-vsx.pkief.material-icon-theme + ]; + userSettings = { + "workbench.colorTheme" = + { + dark = "GitHub Dark"; + light = "GitHub Light"; + } + .${config.custom.theme}; + "workbench.iconTheme" = "material-icon-theme"; + "editor.fontFamily" = "JetBrainsMono Nerd Font"; + "explorer.confirmDelete" = false; + "explorer.confirmDragAndDrop" = false; + "extensions.autoCheckUpdates" = false; + "files.autoSave" = "afterDelay"; + "git.autofetch" = true; + "git.confirmSync" = false; + "nix.enableLanguageServer" = true; + "nix.serverPath" = "${lib.getExe pkgs.nixd}"; + "update.mode" = "none"; + "git.suggestSmartCommit" = false; + "workbench.sideBar.location" = "right"; + "editor.renderWhitespace" = "none"; + "editor.minimap.enabled" = false; + "window.menuBarVisibility" = "toggle"; + "workbench.editor.decorations.colors" = false; + "window.titleBarStyle" = "native"; + "window.customTitleBarVisibility" = "never"; + }; + }; }; - - systemd.user.tmpfiles.rules = - let - settings = builtins.replaceStrings [ "," ] [ ",\\n" ] ( - builtins.toJSON { - "workbench.colorTheme" = - { - dark = "GitHub Dark"; - light = "GitHub Light"; - } - .${config.custom.theme}; - "workbench.iconTheme" = "material-icon-theme"; - "editor.fontFamily" = "JetBrainsMono Nerd Font"; - "explorer.confirmDelete" = false; - "explorer.confirmDragAndDrop" = false; - "extensions.autoCheckUpdates" = false; - "files.autoSave" = "afterDelay"; - "git.autofetch" = true; - "git.confirmSync" = false; - "nix.enableLanguageServer" = true; - "nix.serverPath" = "${lib.getExe pkgs.nixd}"; - "update.mode" = "none"; - "git.suggestSmartCommit" = false; - "workbench.sideBar.location" = "right"; - "editor.renderWhitespace" = "none"; - "editor.minimap.enabled" = false; - "window.menuBarVisibility" = "toggle"; - "workbench.editor.decorations.colors" = false; - "window.titleBarStyle" = "native"; - "window.customTitleBarVisibility" = "never"; - } - ); - in - [ - "f+ %h/.config/VSCodium/User/settings.json - - - - ${settings}" - "f+ %h/.config/VSCodium/User/settings-default.json - - - - ${settings}" - ]; }; }