Move vscodium config to home manager and add vscodium profile
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
{ config, lib, pkgs, osConfig, ... }:
|
||||
|
||||
# https://home-manager-options.extranix.com/
|
||||
# https://nix-community.github.io/home-manager/options.xhtml
|
||||
|
||||
let
|
||||
# Check if the current machine has the role "personal"
|
||||
thisMachineIsPersonal = osConfig.thisMachine.hasRole."personal";
|
||||
@@ -55,4 +58,51 @@ in
|
||||
programs.zed-editor = {
|
||||
enable = thisMachineIsPersonal;
|
||||
};
|
||||
|
||||
programs.vscode = {
|
||||
enable = thisMachineIsPersonal;
|
||||
package = pkgs.vscodium;
|
||||
profiles.default = {
|
||||
userSettings = {
|
||||
editor.formatOnSave = true;
|
||||
nix = {
|
||||
enableLanguageServer = true;
|
||||
serverPath = "${pkgs.nil}/bin/nil";
|
||||
serverSettings.nil = {
|
||||
formatting.command = [ "${pkgs.nixpkgs-fmt}/bin/nixpkgs-fmt" ];
|
||||
nix.flake.autoArchive = true;
|
||||
};
|
||||
};
|
||||
dotnetAcquisitionExtension.sharedExistingDotnetPath = "${pkgs.dotnet-sdk_9}/bin";
|
||||
godotTools = {
|
||||
lsp.serverPort = 6005; # port needs to match Godot configuration
|
||||
editorPath.godot4 = "godot-mono";
|
||||
};
|
||||
};
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
bbenoist.nix # nix syntax support
|
||||
arrterian.nix-env-selector # nix dev envs
|
||||
dart-code.dart-code
|
||||
dart-code.flutter
|
||||
golang.go
|
||||
jnoortheen.nix-ide
|
||||
ms-vscode.cpptools
|
||||
rust-lang.rust-analyzer
|
||||
vadimcn.vscode-lldb
|
||||
tauri-apps.tauri-vscode
|
||||
platformio.platformio-vscode-ide
|
||||
vue.volar
|
||||
wgsl-analyzer.wgsl-analyzer
|
||||
|
||||
# Godot
|
||||
geequlim.godot-tools # For Godot GDScript support
|
||||
ms-dotnettools.csharp
|
||||
ms-dotnettools.vscode-dotnet-runtime
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = lib.mkIf thisMachineIsPersonal [
|
||||
pkgs.dotnetCorePackages.dotnet_9.sdk # For Godot-Mono VSCode-Extension CSharp
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user