Files
nixos-config/home/applications/vscode/default.nix

96 lines
2.0 KiB
Nix

{
pkgs,
lib,
...
}: let
plugins = (import ./extensions.lock) {
pkgs = pkgs;
lib = lib;
};
in {
imports = [
./javascript.nix
./markdown.nix
./nix.nix
];
programs.vscode = {
enable = true;
package = pkgs.symlinkJoin {
name = pkgs.vscodium.name;
paths = [pkgs.vscodium];
buildInputs = [pkgs.vscodium pkgs.makeWrapper];
/*
postBuild = ''
wrapProgram $out/bin/codium \
--add-flags "--enable-features=UseOzonePlatform" \
--add-flags "--enable-features=WaylandWindowDecorations" \
--add-flags "--ozone-platform=wayland" \
--add-flags "--disable-features=WaylandFractionalScaleV1"
'';
*/
pname = pkgs.vscodium.pname;
version = pkgs.vscodium.version;
meta = pkgs.vscodium.meta;
};
enableUpdateCheck = false;
enableExtensionUpdateCheck = false;
extensions = with plugins; [
# General extensions
## Code Completion
# github.copilot
# github.copilot-chat
continue.continue
## Development Environment
ms-toolsai.jupyter
ms-vscode-remote.remote-containers
## Error Checking
usernamehw.errorlens
## Export and Visualisation
ibm.output-colorizer
nobuhito.printcode
pnp.polacode
## Git
lamartire.git-indicators
mhutchie.git-graph
## Miscelaneous
britesnow.vscode-toggle-quotes
mrmlnc.vscode-duplicate
qcz.text-power-tools
# Language extensions
## CSV
mechatroner.rainbow-csv
## Python
ms-python.python
## Rust language extensions
rust-lang.rust-analyzer
serayuzgur.crates
tamasfe.even-better-toml
vadimcn.vscode-lldb
## SVG
jock.svg
## Tex
james-yu.latex-workshop
];
userSettings = {
"editor.linkedEditing" = true;
"window.menuBarVisibility" = "toggle";
"github.copilot.editor.enableAutoCompletions" = true;
};
};
}