87 lines
1.8 KiB
Nix
87 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" \
|
|
--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
|
|
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;
|
|
};
|
|
};
|
|
}
|