nixos-config/modules/desktop/vscode.nix
2024-10-18 00:13:23 -04:00

37 lines
1.2 KiB
Nix

{ config, lib, pkgs, ... }:
{
config = lib.mkIf (config.sconfig.desktop.enable) {
environment.systemPackages = with pkgs; [
(vscode-with-extensions.override {
vscodeExtensions = with pkgs.vscode-extensions; [
esbenp.prettier-vscode
jnoortheen.nix-ide
ms-azuretools.vscode-docker
ms-python.python
redhat.vscode-yaml
shardulm94.trailing-spaces
];
})
];
environment.etc."bck-settings.sh".text = ''
mkdir -p ~/.config/Code/User
ln -sf /etc/vscode-settings.json ~/.config/Code/User/settings.json
ln -sf /etc/vscode-keybindings.json ~/.config/Code/User/keybindings.json
'';
environment.etc."vscode-keybindings.json".source = ./vscode-keybindings.json;
environment.etc."vscode-settings.json".text = builtins.toJSON (
(
builtins.fromJSON (builtins.readFile ./vscode-settings.json)
) // {
# NixOS-specific vscode settings:
"extensions.autoCheckUpdates" = false;
"extensions.autoUpdate" = false;
"terminal.external.linuxExec" = "x-terminal-emulator";
"terminal.integrated.fontFamily" = "DejaVuSansM Nerd Font";
"update.mode" = "none";
}
);
};
}