mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 00:25:42 +02:00
plugins/none-ls: use defaultText
in package options
This commit is contained in:
parent
a8a7e405f4
commit
d2aad1071f
3 changed files with 219 additions and 168 deletions
|
@ -8,8 +8,9 @@ sourceType: sourceName:
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (import ./packages.nix pkgs) packaged;
|
inherit (import ./packages.nix lib) packaged;
|
||||||
pkg = packaged.${sourceName};
|
pkg = packaged.${sourceName};
|
||||||
|
loc = lib.toList pkg;
|
||||||
|
|
||||||
cfg = config.plugins.none-ls;
|
cfg = config.plugins.none-ls;
|
||||||
cfg' = config.plugins.none-ls.sources.${sourceType}.${sourceName};
|
cfg' = config.plugins.none-ls.sources.${sourceType}.${sourceName};
|
||||||
|
@ -55,7 +56,12 @@ in
|
||||||
''
|
''
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
// lib.optionalAttrs (pkg != null) { default = pkg; }
|
// lib.optionalAttrs (pkg != null) {
|
||||||
|
default =
|
||||||
|
lib.attrByPath loc (lib.warn "${lib.concatStringsSep "." loc} cannot be found in pkgs!" null)
|
||||||
|
pkgs;
|
||||||
|
defaultText = lib.literalExpression "pkgs.${lib.concatStringsSep "." loc}";
|
||||||
|
}
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
pkgs: {
|
lib: {
|
||||||
# builtin sources that don't require a package
|
# builtin sources that don't require a package
|
||||||
noPackage = [
|
noPackage = [
|
||||||
"gitrebase"
|
"gitrebase"
|
||||||
|
@ -19,172 +19,217 @@ pkgs: {
|
||||||
|
|
||||||
# nixpkgs packages for a given source
|
# nixpkgs packages for a given source
|
||||||
packaged =
|
packaged =
|
||||||
{
|
# Top-level packages
|
||||||
inherit (pkgs)
|
lib.genAttrs [
|
||||||
actionlint
|
"actionlint"
|
||||||
alejandra
|
"alejandra"
|
||||||
asmfmt
|
"asmfmt"
|
||||||
astyle
|
"astyle"
|
||||||
bibclean
|
"bibclean"
|
||||||
biome
|
"biome"
|
||||||
buf
|
"buf"
|
||||||
cbfmt
|
"cbfmt"
|
||||||
checkmake
|
"checkmake"
|
||||||
checkstyle
|
"checkstyle"
|
||||||
clazy
|
"clazy"
|
||||||
codespell
|
"codespell"
|
||||||
commitlint
|
"commitlint"
|
||||||
cppcheck
|
"cppcheck"
|
||||||
csharpier
|
"csharpier"
|
||||||
deadnix
|
"deadnix"
|
||||||
dfmt
|
"dfmt"
|
||||||
djhtml
|
"djhtml"
|
||||||
djlint
|
"djlint"
|
||||||
erlfmt
|
"erlfmt"
|
||||||
fantomas
|
"fantomas"
|
||||||
fish
|
"fish"
|
||||||
fnlfmt
|
"fnlfmt"
|
||||||
fprettify
|
"fprettify"
|
||||||
gitlint
|
"gitlint"
|
||||||
gofumpt
|
"gofumpt"
|
||||||
golines
|
"golines"
|
||||||
hadolint
|
"hadolint"
|
||||||
hclfmt
|
"hclfmt"
|
||||||
isort
|
"isort"
|
||||||
joker
|
"joker"
|
||||||
just
|
"just"
|
||||||
ktlint
|
"ktlint"
|
||||||
leptosfmt
|
"leptosfmt"
|
||||||
mdformat
|
"mdformat"
|
||||||
mdl
|
"mdl"
|
||||||
mypy
|
"mypy"
|
||||||
pmd
|
"pmd"
|
||||||
prettierd
|
"prettierd"
|
||||||
proselint
|
"proselint"
|
||||||
protolint
|
"protolint"
|
||||||
pylint
|
"pylint"
|
||||||
revive
|
"revive"
|
||||||
rstcheck
|
"rstcheck"
|
||||||
rubocop
|
"rubocop"
|
||||||
rubyfmt
|
"rubyfmt"
|
||||||
rufo
|
"rufo"
|
||||||
rustywind
|
"rustywind"
|
||||||
scalafmt
|
"scalafmt"
|
||||||
selene
|
"selene"
|
||||||
semgrep
|
"semgrep"
|
||||||
shellharden
|
"shellharden"
|
||||||
shfmt
|
"shfmt"
|
||||||
smlfmt
|
"smlfmt"
|
||||||
sqlfluff
|
"sqlfluff"
|
||||||
statix
|
"statix"
|
||||||
stylelint
|
"stylelint"
|
||||||
stylua
|
"stylua"
|
||||||
tfsec
|
"tfsec"
|
||||||
topiary
|
"topiary"
|
||||||
trivy
|
"trivy"
|
||||||
typstfmt
|
"typstfmt"
|
||||||
typstyle
|
"typstyle"
|
||||||
uncrustify
|
"uncrustify"
|
||||||
usort
|
"usort"
|
||||||
vale
|
"vale"
|
||||||
verilator
|
"verilator"
|
||||||
yamlfix
|
"yamlfix"
|
||||||
yamlfmt
|
"yamlfmt"
|
||||||
yamllint
|
"yamllint"
|
||||||
yapf
|
"yapf"
|
||||||
zprint
|
"zprint"
|
||||||
zsh
|
"zsh"
|
||||||
;
|
] lib.id
|
||||||
inherit (pkgs.nodePackages) alex prettier;
|
# Scoped packages
|
||||||
inherit (pkgs.python3.pkgs) black;
|
//
|
||||||
inherit (pkgs.phpPackages) phpmd phpstan;
|
lib.concatMapAttrs
|
||||||
inherit (pkgs.rubyPackages) htmlbeautifier;
|
(
|
||||||
inherit (pkgs.ocamlPackages) ocamlformat;
|
scope: names:
|
||||||
ansiblelint = pkgs.ansible-lint;
|
lib.genAttrs names (name: [
|
||||||
bean_check = pkgs.beancount;
|
scope
|
||||||
bean_format = pkgs.beancount;
|
name
|
||||||
blackd = pkgs.black;
|
])
|
||||||
buildifier = pkgs.bazel-buildtools;
|
)
|
||||||
cfn_lint = pkgs.python3.pkgs.cfn-lint;
|
{
|
||||||
clang_format = pkgs.clang-tools;
|
nodePackages = [
|
||||||
clj_kondo = pkgs.clj-kondo;
|
"alex"
|
||||||
cmake_format = pkgs.cmake-format;
|
"prettier"
|
||||||
cmake_lint = pkgs.cmake-format;
|
];
|
||||||
credo = pkgs.elixir;
|
phpPackages = [
|
||||||
crystal_format = pkgs.crystal;
|
"phpmd"
|
||||||
cue_fmt = pkgs.cue;
|
"phpstan"
|
||||||
d2_fmt = pkgs.d2;
|
];
|
||||||
dart_format = pkgs.dart;
|
rubyPackages = [ "htmlbeautifier" ];
|
||||||
dictionary = pkgs.curl;
|
ocamlPackages = [ "ocamlformat" ];
|
||||||
dotenv_linter = pkgs.dotenv-linter;
|
}
|
||||||
dxfmt = pkgs.dioxus-cli;
|
# Packages where the name is different
|
||||||
editorconfig_checker = pkgs.editorconfig-checker;
|
// {
|
||||||
elm_format = pkgs.elmPackages.elm-format;
|
ansiblelint = "ansible-lint";
|
||||||
emacs_scheme_mode = pkgs.emacs;
|
bean_check = "beancount";
|
||||||
emacs_vhdl_mode = pkgs.emacs;
|
bean_format = "beancount";
|
||||||
erb_format = pkgs.rubyPackages.erb-formatter;
|
black = [
|
||||||
fish_indent = pkgs.fish;
|
"python3"
|
||||||
format_r = pkgs.R;
|
"pkgs"
|
||||||
# TODO: Added 2024-06-13; remove 2024-09-13
|
"black"
|
||||||
# Nixpkgs renamed to _3 & _4 without maintaining an alias
|
];
|
||||||
# Out of sync lock files could be using either attr name...
|
blackd = "black";
|
||||||
gdformat = pkgs.gdtoolkit_4 or pkgs.gdtoolkit;
|
buildifier = "bazel-buildtools";
|
||||||
gdlint = pkgs.gdtoolkit_4 or pkgs.gdtoolkit;
|
cfn_lint = "python3.pkgs.cfn-lint";
|
||||||
gitsigns = pkgs.git;
|
clang_format = "clang-tools";
|
||||||
gleam_format = pkgs.gleam;
|
clj_kondo = "clj-kondo";
|
||||||
glslc = pkgs.shaderc;
|
cmake_format = "cmake-format";
|
||||||
gn_format = pkgs.gn;
|
cmake_lint = "cmake-format";
|
||||||
gofmt = pkgs.go;
|
credo = "elixir";
|
||||||
goimports = pkgs.gotools;
|
crystal_format = "crystal";
|
||||||
goimports_reviser = pkgs.goimports-reviser;
|
cue_fmt = "cue";
|
||||||
golangci_lint = pkgs.golangci-lint;
|
d2_fmt = "d2";
|
||||||
google_java_format = pkgs.google-java-format;
|
dart_format = "dart";
|
||||||
haml_lint = pkgs.mastodon;
|
dictionary = "curl";
|
||||||
haxe_formatter = pkgs.haxe;
|
dotenv_linter = "dotenv-linter";
|
||||||
isortd = pkgs.isort;
|
dxfmt = "dioxus-cli";
|
||||||
ltrs = pkgs.languagetool-rust;
|
editorconfig_checker = "editorconfig-checker";
|
||||||
markdownlint_cli2 = pkgs.markdownlint-cli2;
|
elm_format = [
|
||||||
markdownlint = pkgs.markdownlint-cli;
|
"elmPackages"
|
||||||
mix = pkgs.elixir;
|
"elm-format"
|
||||||
nimpretty = pkgs.nim;
|
];
|
||||||
nixfmt = pkgs.nixfmt-classic;
|
emacs_scheme_mode = "emacs";
|
||||||
nixpkgs_fmt = pkgs.nixpkgs-fmt;
|
emacs_vhdl_mode = "emacs";
|
||||||
opacheck = pkgs.open-policy-agent;
|
erb_format = [
|
||||||
opentofu_fmt = pkgs.opentofu;
|
"rubyPackages"
|
||||||
pg_format = pkgs.pgformatter;
|
"erb-formatterpkgs"
|
||||||
phpcbf = pkgs.phpPackages.php-codesniffer;
|
];
|
||||||
phpcsfixer = pkgs.phpPackages.php-cs-fixer;
|
fish_indent = "fish";
|
||||||
phpcs = pkgs.phpPackages.php-codesniffer;
|
format_r = "R";
|
||||||
# TODO: Added 2024-08-31; remove 2024-11-31
|
# FIXME: Can't have transition fallbacks anymore
|
||||||
# prisma was moved out of nodePackages set without alias
|
gdformat = "gdtoolkit_4";
|
||||||
# Using fallback as a transition period
|
gdlint = "gdtoolkit_4";
|
||||||
prisma_format = pkgs.prisma or pkgs.nodePackages.prisma;
|
gitsigns = "git";
|
||||||
ptop = pkgs.fpc;
|
gleam_format = "gleam";
|
||||||
puppet_lint = pkgs.puppet-lint;
|
glslc = "shaderc";
|
||||||
qmlformat = pkgs.qt6.qtdeclarative;
|
gn_format = "gn";
|
||||||
qmllint = pkgs.qt6.qtdeclarative;
|
gofmt = "go";
|
||||||
racket_fixw = pkgs.racket;
|
goimports = "gotools";
|
||||||
raco_fmt = pkgs.racket;
|
goimports_reviser = "goimports-reviser";
|
||||||
rego = pkgs.open-policy-agent;
|
golangci_lint = "golangci-lint";
|
||||||
rpmspec = pkgs.rpm;
|
google_java_format = "google-java-format";
|
||||||
sqlformat = pkgs.python3.pkgs.sqlparse;
|
haml_lint = "mastodon";
|
||||||
staticcheck = pkgs.go-tools;
|
haxe_formatter = "haxe";
|
||||||
surface = pkgs.elixir;
|
isortd = "isort";
|
||||||
swift_format = pkgs.swift-format;
|
ltrs = "languagetool-rust";
|
||||||
teal = pkgs.luaPackages.tl;
|
markdownlint_cli2 = "markdownlint-cli2";
|
||||||
terraform_fmt = pkgs.terraform;
|
markdownlint = "markdownlint-cli";
|
||||||
terraform_validate = pkgs.terraform;
|
mix = "elixir";
|
||||||
terragrunt_fmt = pkgs.terragrunt;
|
nimpretty = "nim";
|
||||||
terragrunt_validate = pkgs.terragrunt;
|
nixfmt = "nixfmt-classic";
|
||||||
tidy = pkgs.html-tidy;
|
nixpkgs_fmt = "nixpkgs-fmt";
|
||||||
treefmt = pkgs.treefmt2;
|
opacheck = "open-policy-agent";
|
||||||
verible_verilog_format = pkgs.verible;
|
opentofu_fmt = "opentofu";
|
||||||
vint = pkgs.vim-vint;
|
pg_format = "pgformatter";
|
||||||
write_good = pkgs.write-good;
|
phpcbf = [
|
||||||
xmllint = pkgs.libxml2;
|
"phpPackages"
|
||||||
|
"php-codesnifferpkgs"
|
||||||
|
];
|
||||||
|
phpcsfixer = [
|
||||||
|
"phpPackages"
|
||||||
|
"php-cs-fixerpkgs"
|
||||||
|
];
|
||||||
|
phpcs = [
|
||||||
|
"phpPackages"
|
||||||
|
"php-codesnifferpkgs"
|
||||||
|
];
|
||||||
|
# FIXME: Can't have transition fallbacks anymore
|
||||||
|
prisma_format = "prisma";
|
||||||
|
ptop = "fpc";
|
||||||
|
puppet_lint = "puppet-lint";
|
||||||
|
qmlformat = [
|
||||||
|
"qt6"
|
||||||
|
"qtdeclarativepkgs"
|
||||||
|
];
|
||||||
|
qmllint = [
|
||||||
|
"qt6"
|
||||||
|
"qtdeclarativepkgs"
|
||||||
|
];
|
||||||
|
racket_fixw = "racket";
|
||||||
|
raco_fmt = "racket";
|
||||||
|
rego = "open-policy-agent";
|
||||||
|
rpmspec = "rpm";
|
||||||
|
sqlformat = [
|
||||||
|
"python3"
|
||||||
|
"pkgs"
|
||||||
|
"sqlparse"
|
||||||
|
];
|
||||||
|
staticcheck = "go-tools";
|
||||||
|
surface = "elixir";
|
||||||
|
swift_format = "swift-format";
|
||||||
|
teal = "luaPackages.tl";
|
||||||
|
terraform_fmt = "terraform";
|
||||||
|
terraform_validate = "terraform";
|
||||||
|
terragrunt_fmt = "terragrunt";
|
||||||
|
terragrunt_validate = "terragrunt";
|
||||||
|
tidy = "html-tidy";
|
||||||
|
treefmt = "treefmt2";
|
||||||
|
verible_verilog_format = "verible";
|
||||||
|
vint = "vim-vint";
|
||||||
|
write_good = "write-good";
|
||||||
|
xmllint = "libxml2";
|
||||||
}
|
}
|
||||||
# builtin sources that are not packaged in nixpkgs
|
# builtin sources that are not packaged in nixpkgs
|
||||||
// pkgs.lib.genAttrs [
|
// lib.genAttrs [
|
||||||
"blade_formatter"
|
"blade_formatter"
|
||||||
"bsfmt"
|
"bsfmt"
|
||||||
"bslint"
|
"bslint"
|
||||||
|
|
|
@ -37,7 +37,7 @@ let
|
||||||
|
|
||||||
declared =
|
declared =
|
||||||
let
|
let
|
||||||
inherit (import ../plugins/none-ls/packages.nix pkgs) noPackage packaged;
|
inherit (import ../plugins/none-ls/packages.nix lib) noPackage packaged;
|
||||||
in
|
in
|
||||||
noPackage ++ lib.attrsets.attrNames packaged;
|
noPackage ++ lib.attrsets.attrNames packaged;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue