diff --git a/machines/stel-xps/default.nix b/machines/stel-xps/default.nix index 5472d30..8d1b16b 100644 --- a/machines/stel-xps/default.nix +++ b/machines/stel-xps/default.nix @@ -48,6 +48,9 @@ # enable wireguard wireguard.enable = true; + # vscodium + vscodium.enable = true; + # user setup users = { enable = true; diff --git a/modules/vscodium.nix b/modules/vscodium.nix new file mode 100644 index 0000000..4f71c24 --- /dev/null +++ b/modules/vscodium.nix @@ -0,0 +1,41 @@ +{ + config, + lib, + pkgs, + ... +}: +with lib; { + options.elss.vscodium.enable = mkEnableOption "Configure VSCodium with needed extensions"; + + config = let + cfg = config.elss.vscodium; + in + mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + (vscode-with-extensions.override { + vscode = vscodium; + vscodeExtensions = with vscode-extensions; + [ + mkhl.direnv + vadimcn.vscode-lldb + rust-lang.rust-analyzer + serayuzgur.crates + tamasfe.even-better-toml + yzhang.markdown-all-in-one + bbenoist.nix + redhat.vscode-yaml + ms-python.python + ms-azuretools.vscode-docker + ] + ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ + { + name = "vscode-rustfmt"; + publisher = "statiolake"; + version = "0.1.2"; + sha256 = "8caLIaURug+7tclziywtKh86sKAMYHNO5oEPIwvp+U4="; + } + ]; + }) + ]; + }; +}