Main
This commit is contained in:
parent
fc0abdd4bb
commit
aca73cdd0f
73 changed files with 3873 additions and 381 deletions
|
|
@ -1,20 +1,58 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
# VSCodium (Home Module)
|
||||
#
|
||||
# Provides:
|
||||
# - VSCodium editor (open-source build of VS Code)
|
||||
# - Optional extension sets
|
||||
#
|
||||
# Options:
|
||||
# - enable → Enable VSCodium
|
||||
# - extensions.enable → Enable extensions
|
||||
# - extensions.standard→ Enable standard extensions
|
||||
# - extensions.extra → Extra extensions to install
|
||||
#
|
||||
# Notes:
|
||||
# - Some Microsoft extensions may be broken (e.g., ms-python.python)
|
||||
#
|
||||
|
||||
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
cfg = config.nyx-module.home.vscodium;
|
||||
in
|
||||
{
|
||||
options.nyx-module.home.vscodium = {
|
||||
enable = lib.mkEnableOption "Enable vscodium (home) module";
|
||||
enable = lib.mkEnableOption "Enable VSCodium with extensions";
|
||||
|
||||
package = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.vscodium;
|
||||
description = "Package to install for vscodium.";
|
||||
extensions = {
|
||||
enable = lib.mkEnableOption "Enable VSCodium extensions";
|
||||
|
||||
standard = lib.mkEnableOption "Enable standard extensions";
|
||||
|
||||
extra = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.package;
|
||||
default = [];
|
||||
example = [ pkgs.vscode-extensions.ms-python.python ];
|
||||
description = "List of extra VSCodium extensions to install.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = [ cfg.package ];
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
|
||||
profiles.default.extensions =
|
||||
lib.optionals cfg.extensions.enable (
|
||||
(lib.optionals cfg.extensions.standard (with pkgs.vscode-extensions; [
|
||||
catppuccin.catppuccin-vsc
|
||||
jnoortheen.nix-ide
|
||||
ms-azuretools.vscode-docker
|
||||
# ms-python.python # currently broken (pygls failure)
|
||||
]))
|
||||
++ cfg.extensions.extra
|
||||
);
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue