Files
nix-config/home-manager/code.nix
2025-03-04 22:07:12 +01:00

44 lines
1.4 KiB
Nix

{ osConfig, config, pkgs, inputs, lib, ... }: {
config = lib.mkIf osConfig.custom.graphical.code.enable rec {
home.activation.makeVSCodeConfigWritable = let
configDirName = {
"vscode" = "Code";
"vscode-insiders" = "Code - Insiders";
"vscodium" = "VSCodium";
}.${programs.vscode.package.pname};
configPath =
"${config.xdg.configHome}/${configDirName}/User/settings.json";
in {
after = [ "writeBoundary" ];
before = [ ];
data = ''
if [ -e "$(readlink ${configPath})" ]; then
install -m 0640 "$(readlink ${configPath})" ${configPath}
fi
'';
};
programs.vscode = {
enable = true;
package = pkgs.vscodium;
#userSettings = { typst-lsp.exportPdf = "onType"; };
userSettings = {
"Lua.workspace.library" = [
"/home/kopatz/.vscode-oss/extensions/evaisa.vscode-noita-api-1.4.2/out/NoitaLua"
];
"editor.mouseWheelZoom" = true;
"files.autoSave" = "afterDelay";
"clangd.path" = "/run/current-system/sw/bin/clangd";
};
extensions = with pkgs.vscode-extensions; [
jnoortheen.nix-ide
#rust-lang.rust-analyzer broken on unstable
myriad-dreamin.tinymist
#tomoki1207.pdf latex-workshop is faster to preview pdf
james-yu.latex-workshop
twxs.cmake
llvm-vs-code-extensions.vscode-clangd
];
};
};
}