Move home config into modules

This commit is contained in:
Paul-Henri Froidmont 2023-03-21 10:37:27 +01:00
parent b08fc5a41e
commit d5cbf61286
Signed by: phfroidmont
GPG key ID: BE948AFD7E7873BE
299 changed files with 850 additions and 698 deletions

View file

@ -0,0 +1,71 @@
{ config, lib, pkgs, ... }:
with lib;
with lib.my;
let cfg = config.modules.desktop.vscode;
in {
options.modules.desktop.vscode = {
enable = mkBoolOpt false;
};
config = mkIf cfg.enable {
home-manager.users.${config.user.name} = {
programs.vscode = {
enable = true;
package = pkgs.vscodium;
extensions = (
with pkgs.vscode-extensions; [
pkief.material-icon-theme
jnoortheen.nix-ide
arrterian.nix-env-selector
scala-lang.scala
scalameta.metals
hashicorp.terraform
bradlc.vscode-tailwindcss
asciidoctor.asciidoctor-vscode
]
);
userSettings = {
"editor.formatOnSave" = true;
"editor.quickSuggestions" = {
"strings" = true;
};
"tailwindCSS.includeLanguages" = {
"scala" = "html";
};
"tailwindCSS.experimental.classRegex" = [
[ "cls\\(([^)]*)\\)" "\"([^']*)\"" ]
[ "cls\\s*:=\\s*\\(?([^,^\\n^\\)]*)" "\"([^']*)\"" ]
];
"files.autoSave" = "onFocusChange";
"files.watcherExclude" = {
"**/.bloop" = true;
"**/.metals" = true;
"**/.ammonite" = true;
};
"gruvboxMaterial.darkContrast" = "hard";
"metals.millScript" = "mill";
"nix.enableLanguageServer" = true;
"terminal.integrated.confirmOnExit" = "hasChildProcesses";
"terraform.languageServer" = {
"external" = true;
"pathToBinary" = "";
"args" = [
"serve"
];
"maxNumberOfProblems" = 100;
"trace.server" = "off";
};
"workbench.colorTheme" = "Gruvbox Material Dark";
"workbench.iconTheme" = "material-icon-theme";
"asciidoc.use_kroki" = true;
"explorer.confirmDelete" = false;
"explorer.confirmDragAndDrop" = false;
"terminal.integrated.shellIntegration.enabled" = false;
"terminal.external.linuxExec" = "alacritty";
"terminal.integrated.scrollback" = 65535;
};
};
};
};
}