diff options
Diffstat (limited to '')
-rw-r--r-- | modules/common/vscode.nix | 88 |
1 files changed, 77 insertions, 11 deletions
diff --git a/modules/common/vscode.nix b/modules/common/vscode.nix index ee3e18c..0498fea 100644 --- a/modules/common/vscode.nix +++ b/modules/common/vscode.nix @@ -34,7 +34,6 @@ in { extensions = with pkgs.open-vsx; [ - arrterian.nix-env-selector editorconfig.editorconfig efoerster.texlab github.vscode-pull-request-github @@ -50,10 +49,7 @@ in { mkhl.direnv ms-kubernetes-tools.vscode-kubernetes-tools ms-python.python - ms-vscode.cmake-tools - pinage404.nix-extension-pack redhat.ansible - redhat.java redhat.vscode-xml redhat.vscode-yaml rust-lang.rust @@ -61,7 +57,7 @@ in { streetsidesoftware.code-spell-checker-british-english streetsidesoftware.code-spell-checker-russian streetsidesoftware.code-spell-checker-scientific-terms - sumneko.lua + tamasfe.even-better-toml vscode-org-mode.org-mode ziglang.vscode-zig ] @@ -129,11 +125,7 @@ in { }; terminal = { - external.linuxExec = - if alacritty.enable - then "${pkgs.alacritty}/bin/alacritty" - else "${pkgs.xterm}/bin/xterm"; - + external.linuxExec = "${pkgs.alacritty}/bin/alacritty"; integrated = { inherit fontFamily fontSize; enableBell = true; @@ -152,7 +144,76 @@ in { security.workspace.trust.enabled = false; - git.allowForcePush = true; + # Extensions. + + ansible = { + ansible = { + useFullyQualifiedCollectionNames = true; + reuseTerminal = true; + }; + validation.lint.path = "${pkgs.ansible-lint}/bin/ansible-lint"; + }; + + bashIde.shellcheckPath = "${pkgs.shellcheck}/bin/shellcheck"; + + cSpell.language = "en-GB,ru"; + + magit = { + forge-enabled = true; + git-path = "${config.hm.programs.git.package}/bin/git"; + }; + + github = { + branchProtection = true; + gitProtocol = "ssh"; + }; + + terraform = { + languageServer.path = "${pkgs.terraform-ls}/bin/terraform-ls"; + languageServer.terraform.path = "${pkgs.terraform}/bin/terraform"; + }; + + haskell = { + formattingProvider = "ormolu"; + serverExecutablePath = "${pkgs.haskell-language-server}/bin/haskell-language-server"; + }; + + nix = { + enableLanguageServer = true; + serverPath = "${pkgs.rnix-lsp}/bin/rnix-lsp"; + }; + + python = with pkgs.python311Packages; { + experiments.optOutFrom = ["All"]; + pipenvPath = "${pkgs.pipenv}/bin/pipenv"; + poetryPath = "${pkgs.poetry}/bin/poetry"; + formatting = { + provider = "black"; + autopep8Path = "${autopep8}/bin/autopep8"; + blackPath = "${black}/bin/black"; + yapfPath = "${yapf}/bin/yapf"; + }; + linting = { + enabled = true; + banditPath = "${bandit}/bin/bandit"; + flake8Path = "${flake8}/bin/flake8"; + mypyPath = "${mypy}/bin/mypy"; + pycodestylePath = "${pycodestyle}/bin/pycodestyle"; + pydocstylePath = "${pydocstyle}/bin/pydocstyle"; + pylamaPath = "${pylama}/bin/pylama"; + pylintPath = "${pylint}/bin/pylint"; + }; + testing = { + pytestPath = "${pytest}/bin/pytest"; + }; + }; + + rust-client = { + disableRustup = true; + rustupPath = "${pkgs.rustup}/bin/rustup"; + rlsPath = "${pkgs.rustup}/bin/rls"; + rustfmt_path = "${pkgs.rustfmt}/bin/rustfmt"; + }; vim = mkIf cfg.vim.enable rec { easymotion = true; @@ -164,6 +225,11 @@ in { useSystemClipboard = true; }; + zig.zls = { + checkForUpdate = false; + path = "${pkgs.zls}/bin/zls"; + }; + redhat.telemetry.enabled = false; }; }; |