diff --git a/modules/languages/zig.nix b/modules/languages/zig.nix index f6c42d3..2f3bcec 100644 --- a/modules/languages/zig.nix +++ b/modules/languages/zig.nix @@ -21,7 +21,7 @@ in { package = mkOption { description = "ZLS package"; - type = types.package; + type = with types; either package (listOf str); default = pkgs.zls; }; @@ -44,7 +44,11 @@ in { lspconfig.zls.setup { capabilities = capabilities, on_attach=default_on_attach, - cmd = {"${cfg.lsp.package}/bin/zls"}, + cmd = ${ + if isList cfg.lsp.package + then nvim.lua.expToLua cfg.lsp.package + else ''{"${cfg.lsp.package}/bin/zls"}'' + }, settings = { ["zls"] = { zig_exe_path = "${cfg.lsp.zigPackage}/bin/zig",