25 lines
738 B
Nix
25 lines
738 B
Nix
{
|
|
lib,
|
|
pkgs,
|
|
config,
|
|
...
|
|
}: let
|
|
pkgsRepositories = pkgs.nix-vscode-extensions.forVSCodeVersion config.programs.vscode.package.version;
|
|
pkgsRepository = pkgsRepositories.vscode-marketplace;
|
|
in {
|
|
options.programs.vscode.profiles = lib.mkOption {
|
|
type = lib.types.attrsOf (lib.types.submodule ({config, ...}: {
|
|
options = {
|
|
extraExtensions.direnv = {
|
|
enable = lib.mkEnableOption "Enable direnv extension";
|
|
extension = lib.mkPackageOption pkgsRepository "direnv" {
|
|
default = ["mkhl" "direnv"];
|
|
};
|
|
};
|
|
};
|
|
config = lib.mkIf config.extraExtensions.direnv.enable {
|
|
extensions = [config.extraExtensions.direnv.extension];
|
|
};
|
|
}));
|
|
};
|
|
}
|