42 lines
1.3 KiB
Nix
42 lines
1.3 KiB
Nix
{ osConfig, config, pkgs, inputs, lib, ... }: {
|
|
config = lib.mkIf osConfig.custom.graphical.code.enable rec {
|
|
home.activation.makeVSCodeConfigWritable = let
|
|
configDirName = {
|
|
"vscode" = "Code";
|
|
"vscode-insiders" = "Code - Insiders";
|
|
"vscodium" = "VSCodium";
|
|
}.${programs.vscode.package.pname};
|
|
configPath =
|
|
"${config.xdg.configHome}/${configDirName}/User/settings.json";
|
|
in {
|
|
after = [ "writeBoundary" ];
|
|
before = [ ];
|
|
data = ''
|
|
install -m 0640 "$(readlink ${configPath})" ${configPath}
|
|
'';
|
|
};
|
|
programs.vscode = {
|
|
enable = true;
|
|
package = pkgs.vscodium;
|
|
#userSettings = { typst-lsp.exportPdf = "onType"; };
|
|
userSettings = {
|
|
"Lua.workspace.library" = [
|
|
"/home/kopatz/.vscode-oss/extensions/evaisa.vscode-noita-api-1.4.2/out/NoitaLua"
|
|
];
|
|
"editor.mouseWheelZoom" = true;
|
|
"files.autoSave" = "afterDelay";
|
|
"clangd.path" = "/run/current-system/sw/bin/clangd";
|
|
};
|
|
extensions = with pkgs.vscode-extensions; [
|
|
jnoortheen.nix-ide
|
|
#rust-lang.rust-analyzer broken on unstable
|
|
myriad-dreamin.tinymist
|
|
#tomoki1207.pdf latex-workshop is faster to preview pdf
|
|
james-yu.latex-workshop
|
|
twxs.cmake
|
|
llvm-vs-code-extensions.vscode-clangd
|
|
];
|
|
};
|
|
};
|
|
}
|