mirror of
https://github.com/nix-community/nixvim.git
synced 2025-07-10 01:04:34 +02:00
general: add package options (#127)
* barbar: package option * Base16: package option * gruvbox: package option * nord: package option * one: package option * onedark: package option * tokyonight: package option * nvim-cmp: package option * coq: package option * lspkind: package option * helpers: added package option to mkPlugin * fugitive: package option * gitgutter: package option * gitsigns: package option * neogit: package option * ledger: package option * nix: package option * plantuml-syntax: package option * treesitter-context: package option + formatting * treesitter-refactor: package option + formatting * treesitter: package option * zig: package option * null-ls: package option * null-ls/servers: package option * lsp-lines: package option * lspsaga: package option * trouble: package option * luasnip: added description for package option * airline: package option * lightline: package option * lualine: package option * telescope: package option * telescope/frecency: package option * telescope/fzf-native: package option * telescope/media-files: package option * comment-nvim: package option * vim-commentary: package option * dashboard: package option * easyescape: package option * emmet: package option * endwise: package option * floaterm: package option * goyo: package option * intellitab: package option * mark-radar: package option * notify: package option * nvim-autopairs: package option * nvim-tree: package option * project-nvim: package option * specs: package option * startify: package option * surround: package option * undotree: package option
This commit is contained in:
parent
83f6e1647f
commit
3f9effc575
54 changed files with 457 additions and 180 deletions
|
@ -12,6 +12,12 @@ in
|
|||
options.plugins.null-ls = {
|
||||
enable = mkEnableOption "Enable null-ls";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.vimPlugins.null-ls-nvim;
|
||||
description = "Plugin to use for null-ls";
|
||||
};
|
||||
|
||||
debug = mkOption {
|
||||
default = null;
|
||||
type = with types; nullOr bool;
|
||||
|
@ -38,7 +44,7 @@ in
|
|||
};
|
||||
in
|
||||
mkIf cfg.enable {
|
||||
extraPlugins = with pkgs.vimPlugins; [ null-ls-nvim ];
|
||||
extraPlugins = [ cfg.package ];
|
||||
|
||||
extraConfigLua = ''
|
||||
require("null-ls").setup(${helpers.toLuaObject options})
|
||||
|
|
|
@ -4,7 +4,8 @@
|
|||
{ name
|
||||
, sourceType
|
||||
, description ? "Enable ${name} source, for null-ls."
|
||||
, packages ? [ ]
|
||||
, package ? null
|
||||
, extraPackages ? [ ]
|
||||
, ...
|
||||
}:
|
||||
# returns a module
|
||||
|
@ -13,6 +14,14 @@
|
|||
let
|
||||
helpers = import ../helpers.nix args;
|
||||
cfg = config.plugins.null-ls.sources.${sourceType}.${name};
|
||||
# does this evaluate package?
|
||||
packageOption = if package == null then { } else {
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = package;
|
||||
description = "Package to use for ${name} by null-ls";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
options.plugins.null-ls.sources.${sourceType}.${name} = {
|
||||
|
@ -28,10 +37,11 @@
|
|||
# '\'{ extra_args = { "--no-semi", "--single-quote", "--jsx-single-quote" } }'\'
|
||||
# '';
|
||||
};
|
||||
};
|
||||
} // packageOption;
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
extraPackages = packages;
|
||||
# Does this evaluate package?
|
||||
extraPackages = packages ++ optional (package != null) cfg.package;
|
||||
|
||||
# Add source to list of sources
|
||||
plugins.null-ls.sourcesItems =
|
||||
|
|
|
@ -8,36 +8,36 @@ let
|
|||
completion = { };
|
||||
diagnostics = {
|
||||
flake8 = {
|
||||
packages = [ pkgs.python3Packages.flake8 ];
|
||||
package = pkgs.python3Packages.flake8;
|
||||
};
|
||||
shellcheck = {
|
||||
packages = [ pkgs.shellcheck ];
|
||||
package = pkgs.shellcheck;
|
||||
};
|
||||
};
|
||||
formatting = {
|
||||
phpcbf = {
|
||||
packages = [ pkgs.phpPackages.phpcbf ];
|
||||
package = pkgs.phpPackages.phpcbf;
|
||||
};
|
||||
alejandra = {
|
||||
packages = [ pkgs.alejandra ];
|
||||
package = pkgs.alejandra;
|
||||
};
|
||||
nixfmt = {
|
||||
packages = [ pkgs.nixfmt ];
|
||||
package = pkgs.nixfmt;
|
||||
};
|
||||
prettier = {
|
||||
packages = [ pkgs.nodePackages.prettier ];
|
||||
package = pkgs.nodePackages.prettier;
|
||||
};
|
||||
black = {
|
||||
packages = [ pkgs.python3Packages.black ];
|
||||
package = pkgs.python3Packages.black;
|
||||
};
|
||||
beautysh = {
|
||||
packages = [ inputs.beautysh.packages.${pkgs.system}.beautysh-python38 ];
|
||||
package = inputs.beautysh.packages.${pkgs.system}.beautysh-python38;
|
||||
};
|
||||
fourmolu = {
|
||||
packages = [ pkgs.haskellPackages.fourmolu ];
|
||||
package = pkgs.haskellPackages.fourmolu;
|
||||
};
|
||||
fnlfmt = {
|
||||
packages = [ pkgs.fnlfmt ];
|
||||
package = pkgs.fnlfmt;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue