Files
nixos/modules/hm/vscodium.nix
T

77 lines
2.2 KiB
Nix

{
pkgs,
config,
lib,
...
}:
let
cfg = config.greg.vscodium;
in
{
options.greg.vscodium = lib.mkEnableOption "Enable installation of VSCodium on the host";
config = lib.mkIf cfg {
home.packages = with pkgs; [
buildifier
gopls
nixd # nix language server
];
# An alternative editor to vim, when I need it for some things
programs.vscode = {
enable = true;
profiles.default = {
extensions =
with pkgs.vscode-marketplace;
[
arrterian.nix-env-selector
asvetliakov.vscode-neovim
batisteo.vscode-django
donjayamanne.python-environment-manager
golang.go
kevinrose.vsc-python-indent
jnoortheen.nix-ide
mkhl.direnv
ms-python.python
ms-vscode.makefile-tools
ms-vscode-remote.remote-ssh
njpwerner.autodocstring
rust-lang.rust-analyzer
tamasfe.even-better-toml
vscjava.vscode-java-test
vscjava.vscode-java-dependency
vscjava.vscode-java-debug
wholroyd.jinja
]
++ (with pkgs.vscode-marketplace-release; [
github.copilot
github.copilot-chat
]);
userSettings = {
"direnv.restart.automatic" = true;
"direnv.path.executable" = (lib.getExe pkgs.direnv);
"extensions.autoUpdate" = false;
"extensions.experimental.affinity" = {
"asvetliakov.vscode-neovim" = 1;
};
"git.openRepositoryInParentFolders" = "always";
"github.copilot.enable" = {
"*" = false;
"plaintext" = false;
"markdown" = false;
"scminput" = false;
};
"search.exclude" = {
"**/.tox" = true;
};
"terminal.integrated.defaultProfile.linux" = "tmux";
"vscode-neovim.neovimInitVimPaths.darwin" = "~/.config/nvim/init.lua";
"vscode-neovim.neovimInitVimPaths.linux" = "~/.config/nvim/init.lua";
"workbench.settings.applyToAllProfiles" = [ "direnv.path.executable" ];
};
};
};
};
}