85 lines
2.3 KiB
Nix
85 lines
2.3 KiB
Nix
|
{
|
||
|
config,
|
||
|
lib,
|
||
|
pkgs,
|
||
|
...
|
||
|
}: let
|
||
|
cfg = config.lily.vscode;
|
||
|
in {
|
||
|
options.lily.vscode = {
|
||
|
enable = lib.mkEnableOption "activate vscode";
|
||
|
};
|
||
|
|
||
|
config = lib.mkIf cfg.enable {
|
||
|
programs.vscode = {
|
||
|
enable = true;
|
||
|
enableUpdateCheck = false;
|
||
|
enableExtensionUpdateCheck = false;
|
||
|
mutableExtensionsDir = false;
|
||
|
package = pkgs.vscode.overrideAttrs (attrs: {
|
||
|
buildInputs = with pkgs;
|
||
|
attrs.buildInputs
|
||
|
++ [
|
||
|
bun
|
||
|
gcc
|
||
|
cmake
|
||
|
ninja
|
||
|
];
|
||
|
});
|
||
|
extensions = with pkgs.vscode-extensions; [
|
||
|
github.copilot
|
||
|
github.copilot-chat
|
||
|
rust-lang.rust-analyzer
|
||
|
svelte.svelte-vscode
|
||
|
bradlc.vscode-tailwindcss
|
||
|
ms-vsliveshare.vsliveshare
|
||
|
ms-vscode.cmake-tools
|
||
|
ms-python.python
|
||
|
vadimcn.vscode-lldb
|
||
|
bierner.markdown-preview-github-styles
|
||
|
bierner.markdown-checkbox
|
||
|
bierner.markdown-emoji
|
||
|
bierner.markdown-footnotes
|
||
|
bierner.markdown-mermaid
|
||
|
denoland.vscode-deno
|
||
|
ziglang.vscode-zig
|
||
|
# geequlim.godot-tools
|
||
|
gruntfuggly.todo-tree
|
||
|
mhutchie.git-graph
|
||
|
fill-labs.dependi
|
||
|
bbenoist.nix
|
||
|
tamasfe.even-better-toml
|
||
|
twxs.cmake
|
||
|
llvm-vs-code-extensions.vscode-clangd
|
||
|
mkhl.direnv
|
||
|
(pkgs.vscode-utils.buildVscodeMarketplaceExtension {
|
||
|
mktplcRef = {
|
||
|
name = "darcula-solid";
|
||
|
publisher = "jussiemion";
|
||
|
version = "1.2.1";
|
||
|
hash = "sha256-tIfCkOR1Z/uRWiZhrBfOQCZT3Cu6yNjAnxjn0UJFO2U=";
|
||
|
};
|
||
|
})
|
||
|
];
|
||
|
|
||
|
userSettings = {
|
||
|
"editor.cursorSmoothCaretAnimation" = "on";
|
||
|
"editor.smoothScrolling" = true;
|
||
|
"editor.cursorBlinking" = "expand";
|
||
|
"workbench.colorTheme" = "Darcula Solid";
|
||
|
"clangd.path" = "${pkgs.clang-tools}/bin/clangd";
|
||
|
"clangd.arguments" = [
|
||
|
"--clang-tidy"
|
||
|
"--background-index"
|
||
|
"--completion-style=detailed"
|
||
|
"--cross-file-rename"
|
||
|
"--header-insertion=iwyu"
|
||
|
"--all-scopes-completion"
|
||
|
];
|
||
|
"editor.fontFamily" = "JetBrainsMono Nerd Font";
|
||
|
"zig.path" = "${pkgs.zls}/bin/zls";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|