2024-11-09 14:02:26 +00:00
|
|
|
{ vscode-server, pkgs, ... }:
|
|
|
|
{
|
2024-11-09 12:05:06 +00:00
|
|
|
imports = [
|
|
|
|
"${vscode-server}/modules/vscode-server/home.nix"
|
|
|
|
];
|
2024-11-09 12:02:10 +00:00
|
|
|
programs.vscode = {
|
|
|
|
enable = true;
|
|
|
|
enableExtensionUpdateCheck = false;
|
|
|
|
enableUpdateCheck = false;
|
|
|
|
mutableExtensionsDir = false;
|
2024-11-13 14:46:14 +00:00
|
|
|
extensions =
|
|
|
|
(with pkgs.vscode-extensions; [
|
|
|
|
fill-labs.dependi
|
|
|
|
jnoortheen.nix-ide
|
|
|
|
mkhl.direnv
|
|
|
|
pkief.material-icon-theme
|
|
|
|
rust-lang.rust-analyzer
|
|
|
|
signageos.signageos-vscode-sops
|
|
|
|
tamasfe.even-better-toml
|
|
|
|
vadimcn.vscode-lldb
|
|
|
|
])
|
|
|
|
++ (with pkgs.vscode-marketplace; [
|
|
|
|
jscearcy.rust-doc-viewer
|
|
|
|
]);
|
2024-11-09 14:01:22 +00:00
|
|
|
userSettings = {
|
2024-11-09 19:41:56 +00:00
|
|
|
"editor.fontFamily" = "\"Fira Code\", \"Fira Code Nerd Font Mono\", monospace";
|
|
|
|
"editor.fontLigatures" = true;
|
2024-11-09 14:26:52 +00:00
|
|
|
"editor.formatOnPaste" = true;
|
|
|
|
"editor.formatOnSave" = true;
|
|
|
|
"editor.formatOnType" = true;
|
2024-11-09 14:01:22 +00:00
|
|
|
"nix.enableLanguageServer" = true;
|
|
|
|
"nix.formatterPath" = "${pkgs.nixfmt-rfc-style}/bin/nixfmt";
|
|
|
|
"nix.serverPath" = "${pkgs.nil}/bin/nil";
|
2024-11-09 14:26:52 +00:00
|
|
|
"nix.serverSettings" = {
|
|
|
|
nil.formatting.command = [ "${pkgs.nixfmt-rfc-style}/bin/nixfmt" ];
|
|
|
|
};
|
|
|
|
"sops.binPath" = "${pkgs.sops}/bin/sops";
|
2024-11-09 14:01:22 +00:00
|
|
|
"workbench.iconTheme" = "material-icon-theme";
|
|
|
|
};
|
2024-11-09 12:02:10 +00:00
|
|
|
};
|
2024-11-09 12:05:06 +00:00
|
|
|
services.vscode-server.enable = true;
|
2024-11-09 12:02:10 +00:00
|
|
|
}
|