29 lines
854 B
Nix
29 lines
854 B
Nix
{
|
|
lib,
|
|
pkgs,
|
|
config,
|
|
...
|
|
}: let
|
|
pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version;
|
|
pkgsRepository = pkgsRepositories.open-vsx;
|
|
in {
|
|
options.programs.vscode.profiles = lib.mkOption {
|
|
type = lib.types.attrsOf (lib.types.submodule ({config, ...}: {
|
|
options = {
|
|
extraExtensions.nixIde = {
|
|
enable = lib.mkEnableOption "Enable Nix IDE extension";
|
|
extension = lib.mkPackageOption pkgsRepository "nix-ide" {
|
|
default = ["jnoortheen" "nix-ide"];
|
|
};
|
|
};
|
|
};
|
|
config = lib.mkIf config.extraExtensions.nixIde.enable {
|
|
extensions = [config.extraExtensions.nixIde.extension];
|
|
userSettings = {
|
|
"nix.enableLanguageServer" = true;
|
|
"nix.serverPath" = "nil";
|
|
};
|
|
};
|
|
}));
|
|
};
|
|
}
|