nix/home-manager/modules/vscode.nix

50 lines
No EOL
1.7 KiB
Nix

{ pkgs, inputs, system, ... }:
{
programs.vscode = {
enable = true;
package = pkgs.vscodium;
enableUpdateCheck = false;
enableExtensionUpdateCheck = false;
mutableExtensionsDir = false;
extensions = with inputs.vscode-extensions.extensions."${system}".open-vsx; [
# Language servers
rust-lang.rust-analyzer # Rust
llvm-vs-code-extensions.vscode-clangd # C++
vadimcn.vscode-lldb # C++ Debugging
jnoortheen.nix-ide # Nix
tamasfe.even-better-toml # TOML
# Theming
pkief.material-icon-theme # Material icons
# Utilities
streetsidesoftware.code-spell-checker # Spellchecking
];
userSettings = {
# Editor
"editor.fontFamily" = "'FiraCode Nerd Font Mono', 'Droid Sans Mono', 'monospace', monospace";
"editor.indentSize" = "tabSize";
"editor.tabSize" = 4;
# JJ
"files.watcherExclude" = {
"**/.git/objects/**" = true;
"**/.git/subtree-cache/**" = true;
"**/.hg/store/**" = true;
"**/.jj" = true;
};
"files.exclude" = {
"**/.git" = true;
"**/.jj" = true;
"**/.svn" = true;
"**/.hg" = true;
"**/CVS" = true;
"**/.DS_Store" = true;
"**/Thumbs.db" = true;
};
# Nix
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nixd";
};
};
}