59 lines
1.8 KiB
Nix
59 lines
1.8 KiB
Nix
{ pkgs, config, lib, inputs, ... }:
|
|
|
|
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;
|
|
package = pkgs.vscodium;
|
|
extensions = with inputs.vsext.extensions."${pkgs.stdenv.system}".vscode-marketplace; [
|
|
arrterian.nix-env-selector
|
|
asvetliakov.vscode-neovim
|
|
batisteo.vscode-django
|
|
bungcip.better-toml
|
|
donjayamanne.python-environment-manager
|
|
golang.go
|
|
kevinrose.vsc-python-indent
|
|
jnoortheen.nix-ide
|
|
mkhl.direnv
|
|
ms-python.python
|
|
njpwerner.autodocstring
|
|
rust-lang.rust-analyzer
|
|
vscjava.vscode-java-test
|
|
vscjava.vscode-java-dependency
|
|
vscjava.vscode-java-debug
|
|
wholroyd.jinja
|
|
];
|
|
userSettings = {
|
|
"direnv.restart.automatic" = true;
|
|
"direnv.path.executable" = "/home/gregory.hellings/.nix-profile/bin/direnv";
|
|
"extensions.autoUpdate" = false;
|
|
"extensions.experimental.affinity" = {
|
|
"asvetliakov.vscode-neovim" = 1;
|
|
};
|
|
"git.openRepositoryInParentFolders" = "always";
|
|
"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"
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|