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

88 lines
1.8 KiB
Nix

{
pkgs,
lib,
...
}: let
plugins = (import ./extensions.lock) {
pkgs = pkgs;
lib = lib;
};
in {
imports = [
./javascript.nix
./latex.nix
./markdown.nix
./nix.nix
./rust.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"
'';
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
## SVG
jock.svg
];
userSettings = {
"editor.linkedEditing" = true;
"window.menuBarVisibility" = "toggle";
"github.copilot.editor.enableAutoCompletions" = true;
"redhat.telemetry.enabled" = false;
};
};
}