configuration.nix/nvim/options.nix
Jalil David Salamé Messina 5a7f12d997
Some checks failed
/ check (nvimDev) (push) Successful in 10s
/ check (nvimHeadless) (push) Failing after 6s
/ check (nvimNoBundledBins) (push) Successful in 8s
/ check (nvimNoLsp) (push) Successful in 8s
/ check (nvimNoTSGrammars) (push) Successful in 9s
/ check (treefmt) (push) Successful in 3s
/ build (audiomenu) (push) Has been skipped
/ build (docs) (push) Has been skipped
/ build (jpassmenu) (push) Has been skipped
/ build (nixosConfigurations.vm.config.system.build.toplevel) (push) Has been skipped
/ build (nvim) (push) Has been skipped
/ report-size (push) Has been skipped
fix: reduce size of config
And add more knobs to further reduce the config size.
2025-02-16 23:36:01 +01:00

37 lines
1 KiB
Nix

{ lib, ... }:
let
inherit (lib) mkEnableOption mkOption types;
mkDisableOption =
desc:
mkEnableOption desc
// {
default = true;
example = false;
};
in
{
options.jhome.nvim = {
enable = mkDisableOption "jalil's Neovim configuration";
reduceSize = mkEnableOption "reduce size by disabling big modules";
dev = mkOption {
type = types.submodule {
options = {
enable = mkDisableOption "development configuration";
bundleLSPs = mkDisableOption "bundling LSPs with Neovim (decreases size when disabled)";
bundleGrammars = mkDisableOption "bundling treesitter grammars with Neovim (barely decreases size when disabled)";
};
};
default = { };
example = {
enable = false;
};
description = ''
Development options
Disabling this is advised for headless setups (e.g. servers), where you
won't be doing software development and would prefer to instead have a
smaller package.
'';
};
};
}