diff --git a/plugins/lsp/language-servers/default.nix b/plugins/lsp/language-servers/default.nix index cc51058b..c42c6a95 100644 --- a/plugins/lsp/language-servers/default.nix +++ b/plugins/lsp/language-servers/default.nix @@ -186,10 +186,7 @@ let else if lib.hasAttr name lspPackages.customCmd then { inherit (lspPackages.customCmd.${name}) package cmd; } else - assert lib.assertMsg (lib.elem name lspPackages.unpackaged) "LSP server ${name} is unknown"; - { - package = null; - }; + { package = null; }; generatedServers = lib.pipe ../../../generated/lspconfig-servers.json [ lib.importJSON diff --git a/tests/generated.nix b/tests/generated.nix index 3f4eaff7..ed4d388e 100644 --- a/tests/generated.nix +++ b/tests/generated.nix @@ -39,6 +39,25 @@ let # The test fails if this is non-empty. errors = lib.concatStringsSep "\n" ( checkDeclarations ( + let + inherit (import ../plugins/lsp/lsp-packages.nix) unpackaged packages customCmd; + in + { + name = "lsp"; + declarationFile = "plugins/lsp/lsp-packages.nix"; + + packages = builtins.attrValues packages; + + declared = unpackaged ++ lib.attrsets.attrNames (packages // customCmd); + + generated = lib.pipe ../generated/lspconfig-servers.json [ + lib.importJSON + (builtins.map (lib.getAttr "name")) + lib.lists.unique + ]; + } + ) + ++ checkDeclarations ( let inherit (import ../plugins/by-name/none-ls/packages.nix lib) noPackage packaged; in