nixd seems to exit when I try to use it with rass (a lsp multiplexer) and tix.
nixd+rass+nil seems fine.
[jsonrpc] D[15:37:49.499] Running language server: rass --log-level debug -- nixd -- /nix/store/cz23ynb326msnyvwbj8pw582zysjyd35-tix-0.1.0/bin/tix lsp
[stderr] i[15:37:49.551] Launching nixd: nixd
[stderr] i[15:37:49.552] Launching tix#1: /nix/store/cz23ynb326msnyvwbj8pw582zysjyd35-tix-0.1.0/bin/tix lsp
[stderr] i[15:37:49.552] Logic class: <class 'rassumfrassum.frassum.LspLogic'>
[stderr] i[15:37:49.552] Primary server: nixd
[stderr] i[15:37:49.552] Secondary servers: tix#1
[stderr] e[15:37:49.552] --> initialize[1] {"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"processId": 581931, "clientInfo": {"name": "Eglot", "version": "1.23"}, "rootPath": "/home/bbigras/tmp/test/", "rootUri": "file:///home/bbigras/tmp/test", "initializationOptions": {}, "capabilities": {"workspace": {"applyEdit": true, "executeCommand": {"dynamicRegistration": false}, "workspaceEdit": {"documentChanges": true, "resourceOperations": ["create", "delete", "rename"], "failureHandling": "abort"}, "didChangeWatchedFiles": {"dynamicRegistration": true, "relativePatternSupport": true}, "symbol": {"dynamicRegistration": false}, "semanticTokens": {"refreshSupport": true}, "configuration": true, "workspaceFolders": true}, "textDocument": {"synchronization": {"dynamicRegistration": false, "willSave": true, "willSaveWaitUntil": true, "didSave": true}, "completion": {"dynamicRegistration": false, "completionItem": {"snippetSupport": false, "deprecatedSupport": true, "resolveSupport": {"properties": ["documentation", "details", "additionalTextEdits"]}, "tagSupport": {"valueSet": [1]}, "insertReplaceSupport": true}, "contextSupport": true}, "hover": {"dynamicRegistration": false, "contentFormat": ["markdown", "plaintext"]}, "signatureHelp": {"dynamicRegistration": false, "signatureInformation": {"parameterInformation": {"labelOffsetSupport": true}, "documentationFormat": ["markdown", "plaintext"], "activeParameterSupport": true}}, "references": {"dynamicRegistration": false}, "definition": {"dynamicRegistration": false, "linkSupport": true}, "declaration": {"dynamicRegistration": false, "linkSupport": true}, "implementation": {"dynamicRegistration": false, "linkSupport": true}, "typeDefinition": {"dynamicRegistration": false, "linkSupport": true}, "documentSymbol": {"dynamicRegistration": false, "hierarchicalDocumentSymbolSupport": true, "symbolKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]}}, "documentHighlight": {"dynamicRegistration": false}, "codeAction": {"dynamicRegistration": false, "resolveSupport": {"properties": ["edit", "command"]}, "dataSupport": true, "codeActionLiteralSupport": {"codeActionKind": {"valueSet": ["quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports"]}}, "isPreferredSupport": true}, "formatting": {"dynamicRegistration": false}, "rangeFormatting": {"dynamicRegistration": false}, "rename": {"dynamicRegistration": false, "prepareSupport": true}, "semanticTokens": {"dynamicRegistration": false, "requests": {"full": {"delta": true}}, "overlappingTokenSupport": true, "multilineTokenSupport": true, "tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"], "tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "abstract", "async", "modification", "documentation", "defaultLibrary"], "formats": ["relative"]}, "inlayHint": {"dynamicRegistration": false}, "callHierarchy": {"dynamicRegistration": false}, "typeHierarchy": {"dynamicRegistration": false}, "diagnostic": {"dynamicRegistration": false}, "publishDiagnostics": {"relatedInformation": false, "versionSupport": true, "codeDescriptionSupport": false, "tagSupport": {"valueSet": [1, 2]}}, "$streamingDiagnostics": {"dynamicRegistration": false}}, "window": {"showDocument": {"support": true}, "showMessage": {"messageActionItem": {"additionalPropertiesSupport": true}}, "workDoneProgress": false}, "general": {"positionEncodings": ["utf-32", "utf-8", "utf-16"]}, "experimental": {}}, "workspaceFolders": [{"uri": "file:///home/bbigras/tmp/test", "name": "~/tmp/test/"}]}}
[stderr] i[15:37:49.552] Client requested streaming diagnostics mode
[stderr] e[15:37:49.553] [nixd] --> initialize[1] {"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"processId": 581931, "clientInfo": {"name": "Eglot", "version": "1.23"}, "rootPath": "/home/bbigras/tmp/test/", "rootUri": "file:///home/bbigras/tmp/test", "initializationOptions": {}, "capabilities": {"workspace": {"applyEdit": true, "executeCommand": {"dynamicRegistration": false}, "workspaceEdit": {"documentChanges": true, "resourceOperations": ["create", "delete", "rename"], "failureHandling": "abort"}, "didChangeWatchedFiles": {"dynamicRegistration": true, "relativePatternSupport": true}, "symbol": {"dynamicRegistration": false}, "semanticTokens": {"refreshSupport": true}, "configuration": true, "workspaceFolders": true}, "textDocument": {"synchronization": {"dynamicRegistration": false, "willSave": true, "willSaveWaitUntil": true, "didSave": true}, "completion": {"dynamicRegistration": false, "completionItem": {"snippetSupport": false, "deprecatedSupport": true, "resolveSupport": {"properties": ["documentation", "details", "additionalTextEdits"]}, "tagSupport": {"valueSet": [1]}, "insertReplaceSupport": true}, "contextSupport": true}, "hover": {"dynamicRegistration": false, "contentFormat": ["markdown", "plaintext"]}, "signatureHelp": {"dynamicRegistration": false, "signatureInformation": {"parameterInformation": {"labelOffsetSupport": true}, "documentationFormat": ["markdown", "plaintext"], "activeParameterSupport": true}}, "references": {"dynamicRegistration": false}, "definition": {"dynamicRegistration": false, "linkSupport": true}, "declaration": {"dynamicRegistration": false, "linkSupport": true}, "implementation": {"dynamicRegistration": false, "linkSupport": true}, "typeDefinition": {"dynamicRegistration": false, "linkSupport": true}, "documentSymbol": {"dynamicRegistration": false, "hierarchicalDocumentSymbolSupport": true, "symbolKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]}}, "documentHighlight": {"dynamicRegistration": false}, "codeAction": {"dynamicRegistration": false, "resolveSupport": {"properties": ["edit", "command"]}, "dataSupport": true, "codeActionLiteralSupport": {"codeActionKind": {"valueSet": ["quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports"]}}, "isPreferredSupport": true}, "formatting": {"dynamicRegistration": false}, "rangeFormatting": {"dynamicRegistration": false}, "rename": {"dynamicRegistration": false, "prepareSupport": true}, "semanticTokens": {"dynamicRegistration": false, "requests": {"full": {"delta": true}}, "overlappingTokenSupport": true, "multilineTokenSupport": true, "tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"], "tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "abstract", "async", "modification", "documentation", "defaultLibrary"], "formats": ["relative"]}, "inlayHint": {"dynamicRegistration": false}, "callHierarchy": {"dynamicRegistration": false}, "typeHierarchy": {"dynamicRegistration": false}, "diagnostic": {"dynamicRegistration": false}, "publishDiagnostics": {"relatedInformation": false, "versionSupport": true, "codeDescriptionSupport": false, "tagSupport": {"valueSet": [1, 2]}}}, "window": {"showDocument": {"support": true}, "showMessage": {"messageActionItem": {"additionalPropertiesSupport": true}}, "workDoneProgress": false}, "general": {"positionEncodings": ["utf-16"]}, "experimental": {}}, "workspaceFolders": [{"uri": "file:///home/bbigras/tmp/test", "name": "~/tmp/test/"}]}}
[stderr] e[15:37:49.553] [tix#1] --> initialize[1] {"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"processId": 581931, "clientInfo": {"name": "Eglot", "version": "1.23"}, "rootPath": "/home/bbigras/tmp/test/", "rootUri": "file:///home/bbigras/tmp/test", "initializationOptions": {}, "capabilities": {"workspace": {"applyEdit": true, "executeCommand": {"dynamicRegistration": false}, "workspaceEdit": {"documentChanges": true, "resourceOperations": ["create", "delete", "rename"], "failureHandling": "abort"}, "didChangeWatchedFiles": {"dynamicRegistration": true, "relativePatternSupport": true}, "symbol": {"dynamicRegistration": false}, "semanticTokens": {"refreshSupport": true}, "configuration": true, "workspaceFolders": true}, "textDocument": {"synchronization": {"dynamicRegistration": false, "willSave": true, "willSaveWaitUntil": true, "didSave": true}, "completion": {"dynamicRegistration": false, "completionItem": {"snippetSupport": false, "deprecatedSupport": true, "resolveSupport": {"properties": ["documentation", "details", "additionalTextEdits"]}, "tagSupport": {"valueSet": [1]}, "insertReplaceSupport": true}, "contextSupport": true}, "hover": {"dynamicRegistration": false, "contentFormat": ["markdown", "plaintext"]}, "signatureHelp": {"dynamicRegistration": false, "signatureInformation": {"parameterInformation": {"labelOffsetSupport": true}, "documentationFormat": ["markdown", "plaintext"], "activeParameterSupport": true}}, "references": {"dynamicRegistration": false}, "definition": {"dynamicRegistration": false, "linkSupport": true}, "declaration": {"dynamicRegistration": false, "linkSupport": true}, "implementation": {"dynamicRegistration": false, "linkSupport": true}, "typeDefinition": {"dynamicRegistration": false, "linkSupport": true}, "documentSymbol": {"dynamicRegistration": false, "hierarchicalDocumentSymbolSupport": true, "symbolKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]}}, "documentHighlight": {"dynamicRegistration": false}, "codeAction": {"dynamicRegistration": false, "resolveSupport": {"properties": ["edit", "command"]}, "dataSupport": true, "codeActionLiteralSupport": {"codeActionKind": {"valueSet": ["quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports"]}}, "isPreferredSupport": true}, "formatting": {"dynamicRegistration": false}, "rangeFormatting": {"dynamicRegistration": false}, "rename": {"dynamicRegistration": false, "prepareSupport": true}, "semanticTokens": {"dynamicRegistration": false, "requests": {"full": {"delta": true}}, "overlappingTokenSupport": true, "multilineTokenSupport": true, "tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"], "tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "abstract", "async", "modification", "documentation", "defaultLibrary"], "formats": ["relative"]}, "inlayHint": {"dynamicRegistration": false}, "callHierarchy": {"dynamicRegistration": false}, "typeHierarchy": {"dynamicRegistration": false}, "diagnostic": {"dynamicRegistration": false}, "publishDiagnostics": {"relatedInformation": false, "versionSupport": true, "codeDescriptionSupport": false, "tagSupport": {"valueSet": [1, 2]}}}, "window": {"showDocument": {"support": true}, "showMessage": {"messageActionItem": {"additionalPropertiesSupport": true}}, "workDoneProgress": false}, "general": {"positionEncodings": ["utf-16"]}, "experimental": {}}, "workspaceFolders": [{"uri": "file:///home/bbigras/tmp/test", "name": "~/tmp/test/"}]}}
[stderr] i[15:37:49.553] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp] tix lsp 0.1.0 starting (pid 582334)
[stderr] i[15:37:49.553] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp] Detected system memory: 31848 MiB
[stderr] i[15:37:49.554] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp] RSS limit for inference: 25478 MiB
[stderr] i[15:37:49.554] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp] RLIMIT_AS set to 63695 MiB
[stderr] i[15:37:49.559] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp] Initial registry: 29 type aliases, 0 global vals
[stderr] i[15:37:49.559] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp::server] Workspace root: file:///home/bbigras/tmp/test
[stderr] i[15:37:49.559] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp::server] Client: Eglot v1.23
[stderr] i[15:37:49.559] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp::server] No tix.toml found
[stderr] e[15:37:49.560] [tix#1] <-- initialize[1] {"jsonrpc": "2.0", "result": {"capabilities": {"codeActionProvider": true, "completionProvider": {"resolveProvider": true, "triggerCharacters": ["."]}, "definitionProvider": true, "documentFormattingProvider": true, "documentHighlightProvider": true, "documentLinkProvider": {"resolveProvider": false}, "documentSymbolProvider": true, "hoverProvider": true, "inlayHintProvider": true, "referencesProvider": true, "renameProvider": {"prepareProvider": true}, "selectionRangeProvider": true, "semanticTokensProvider": {"full": true, "legend": {"tokenModifiers": ["definition", "defaultLibrary"], "tokenTypes": ["variable", "parameter", "property", "function", "keyword", "string", "number", "comment", "operator"]}}, "signatureHelpProvider": {"triggerCharacters": [" "]}, "textDocumentSync": 1, "typeDefinitionProvider": true, "workspaceSymbolProvider": true}}, "id": 1}
[stderr] d[15:37:49.560] Message from tix#1 starts aggregation for initialize (139901049201264)
[stderr] i[15:37:49.573] [nixd] V[15:37:49.572] 582333: <<< {"id":1,"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{"experimental":{},"general":{"positionEncodings":["utf-16"]},"textDocument":{"callHierarchy":{"dynamicRegistration":false},"codeAction":{"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"dataSupport":true,"dynamicRegistration":false,"isPreferredSupport":true,"resolveSupport":{"properties":["edit","command"]}},"completion":{"completionItem":{"deprecatedSupport":true,"insertReplaceSupport":true,"resolveSupport":{"properties":["documentation","details","additionalTextEdits"]},"snippetSupport":false,"tagSupport":{"valueSet":[1]}},"contextSupport":true,"dynamicRegistration":false},"declaration":{"dynamicRegistration":false,"linkSupport":true},"definition":{"dynamicRegistration":false,"linkSupport":true},"diagnostic":{"dynamicRegistration":false},"documentHighlight":{"dynamicRegistration":false},"documentSymbol":{"dynamicRegistration":false,"hierarchicalDocumentSymbolSupport":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"formatting":{"dynamicRegistration":false},"hover":{"contentFormat":["markdown","plaintext"],"dynamicRegistration":false},"implementation":{"dynamicRegistration":false,"linkSupport":true},"inlayHint":{"dynamicRegistration":false},"publishDiagnostics":{"codeDescriptionSupport":false,"relatedInformation":false,"tagSupport":{"valueSet":[1,2]},"versionSupport":true},"rangeFormatting":{"dynamicRegistration":false},"references":{"dynamicRegistration":false},"rename":{"dynamicRegistration":false,"prepareSupport":true},"semanticTokens":{"dynamicRegistration":false,"formats":["relative"],"multilineTokenSupport":true,"overlappingTokenSupport":true,"requests":{"full":{"delta":true}},"tokenModifiers":["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"],"tokenTypes":["namespace","type","class","enum","interface","struct","typeParameter","parameter","variable","property","enumMember","event","function","method","macro","keyword","modifier","comment","string","number","regexp","operator","decorator"]},"signatureHelp":{"dynamicRegistration":false,"signatureInformation":{"activeParameterSupport":true,"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true}}},"synchronization":{"didSave":true,"dynamicRegistration":false,"willSave":true,"willSaveWaitUntil":true},"typeDefinition":{"dynamicRegistration":false,"linkSupport":true},"typeHierarchy":{"dynamicRegistration":false}},"window":{"showDocument":{"support":true},"showMessage":{"messageActionItem":{"additionalPropertiesSupport":true}},"workDoneProgress":false},"workspace":{"applyEdit":true,"configuration":true,"didChangeWatchedFiles":{"dynamicRegistration":true,"relativePatternSupport":true},"executeCommand":{"dynamicRegistration":false},"semanticTokens":{"refreshSupport":true},"symbol":{"dynamicRegistration":false},"workspaceEdit":{"documentChanges":true,"failureHandling":"abort","resourceOperations":["create","delete","rename"]},"workspaceFolders":true}},"clientInfo":{"name":"Eglot","version":"1.23"},"initializationOptions":{},"processId":581931,"rootPath":"/home/bbigras/tmp/test/","rootUri":"file:///home/bbigras/tmp/test","workspaceFolders":[{"name":"~/tmp/test/","uri":"file:///home/bbigras/tmp/test"}]}}
[stderr] i[15:37:49.573] [nixd] I[15:37:49.573] 582333: <-- initialize(1)
[stderr] i[15:37:49.573] [nixd] I[15:37:49.573] 582333: --> reply:initialize(1)
[stderr] i[15:37:49.573] [nixd] V[15:37:49.573] 582333: >>> {"id":1,"jsonrpc":"2.0","result":{"capabilities":{"codeActionProvider":{"codeActionKinds":["quickfix","refactor","refactor.rewrite"],"resolveProvider":true},"completionProvider":{"resolveProvider":true,"triggerCharacters":["."]},"definitionProvider":true,"documentFormattingProvider":true,"documentHighlightProvider":true,"documentLinkProvider":{},"documentSymbolProvider":true,"foldingRangeProvider":true,"hoverProvider":true,"inlayHintProvider":true,"referencesProvider":true,"renameProvider":{"prepareProvider":true},"textDocumentSync":{"change":2,"openClose":true,"save":true}},"serverInfo":{"name":"nixd","version":"2.9.0"}}}
[stderr] e[15:37:49.573] [nixd] <-- initialize[1] {"id": 1, "jsonrpc": "2.0", "result": {"capabilities": {"codeActionProvider": {"codeActionKinds": ["quickfix", "refactor", "refactor.rewrite"], "resolveProvider": true}, "completionProvider": {"resolveProvider": true, "triggerCharacters": ["."]}, "definitionProvider": true, "documentFormattingProvider": true, "documentHighlightProvider": true, "documentLinkProvider": {}, "documentSymbolProvider": true, "foldingRangeProvider": true, "hoverProvider": true, "inlayHintProvider": true, "referencesProvider": true, "renameProvider": {"prepareProvider": true}, "textDocumentSync": {"change": 2, "openClose": true, "save": true}}, "serverInfo": {"name": "nixd", "version": "2.9.0"}}}
[stderr] d[15:37:49.573] Message from nixd continues aggregation for initialize (139901049201264)
[stderr] d[15:37:49.573] Completing aggregation for initialize (139901049201264)!
[stderr] e[15:37:49.573] <-- initialize[1] {"result": {"capabilities": {"codeActionProvider": {"codeActionKinds": ["quickfix", "refactor", "refactor.rewrite"], "resolveProvider": true}, "completionProvider": {"resolveProvider": true, "triggerCharacters": [".", "."]}, "definitionProvider": true, "documentFormattingProvider": true, "documentHighlightProvider": true, "documentLinkProvider": {"resolveProvider": false}, "documentSymbolProvider": true, "hoverProvider": true, "inlayHintProvider": true, "referencesProvider": true, "renameProvider": {"prepareProvider": true}, "selectionRangeProvider": true, "semanticTokensProvider": {"full": true, "legend": {"tokenModifiers": ["definition", "defaultLibrary"], "tokenTypes": ["variable", "parameter", "property", "function", "keyword", "string", "number", "comment", "operator"]}}, "signatureHelpProvider": {"triggerCharacters": [" "]}, "textDocumentSync": {"change": 2, "openClose": true, "save": true}, "typeDefinitionProvider": true, "workspaceSymbolProvider": true, "foldingRangeProvider": true, "$streamingDiagnosticsProvider": true}, "serverInfo": {"name": "nixd", "version": "2.9.0"}}, "id": 1, "jsonrpc": "2.0"}
[stderr] i[15:37:49.573] [nixd] I[15:37:49.573] 582333: --> call attrset/evalExpr(1)
[stderr] i[15:37:49.573] [nixd] V[15:37:49.573] 582333: >>> {"id":1,"jsonrpc":"2.0","method":"attrset/evalExpr","params":"import <nixpkgs> { }"}
[stderr] i[15:37:49.574] [nixd] I[15:37:49.574] 582333: --> call attrset/evalExpr(1)
[stderr] i[15:37:49.574] [nixd] V[15:37:49.574] 582333: >>> {"id":1,"jsonrpc":"2.0","method":"attrset/evalExpr","params":"(let pkgs = import <nixpkgs> { }; in (pkgs.lib.evalModules { modules = (import <nixpkgs/nixos/modules/module-list.nix>) ++ [ ({...}: { nixpkgs.hostPlatform = builtins.currentSystem;} ) ] ; })).options"}
[stderr] i[15:37:49.574] [nixd] I[15:37:49.574] 582333: --> call workspace/configuration(1)
[stderr] i[15:37:49.574] [nixd] V[15:37:49.574] 582333: >>> {"id":1,"jsonrpc":"2.0","method":"workspace/configuration","params":{"items":[{"section":"nixd"}]}}
[stderr] e[15:37:49.574] [nixd] <-s workspace/configuration[1] {"id": 1, "jsonrpc": "2.0", "method": "workspace/configuration", "params": {"items": [{"section": "nixd"}]}}
[stderr] e[15:37:49.574] <-s workspace/configuration[0] {"id": 0, "jsonrpc": "2.0", "method": "workspace/configuration", "params": {"items": [{"section": "nixd"}]}}
[stderr] e[15:37:49.575] --> initialized {"jsonrpc": "2.0", "method": "initialized", "params": {}}
[stderr] e[15:37:49.575] [nixd] --> initialized {"jsonrpc": "2.0", "method": "initialized", "params": {}}
[stderr] e[15:37:49.575] [tix#1] --> initialized {"jsonrpc": "2.0", "method": "initialized", "params": {}}
[stderr] i[15:37:49.575] [nixd] V[15:37:49.575] 582333: <<< {"jsonrpc":"2.0","method":"initialized","params":{}}
[stderr] i[15:37:49.575] [nixd] I[15:37:49.575] 582333: <-- initialized
[stderr] i[15:37:49.575] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp::server] tix lsp ready — 29 type aliases, 0 global vals, diagnostics on, inlay hints on
[stderr] e[15:37:49.575] [tix#1] <-- window/logMessage {"jsonrpc": "2.0", "method": "window/logMessage", "params": {"message": "tix lsp ready — 29 type aliases, 0 global vals, diagnostics on, inlay hints on", "type": 3}}
[stderr] e[15:37:49.575] <-- window/logMessage {"jsonrpc": "2.0", "method": "window/logMessage", "params": {"message": "tix lsp ready — 29 type aliases, 0 global vals, diagnostics on, inlay hints on", "type": 3}}
[stderr] e[15:37:49.579] --> textDocument/didOpen {"jsonrpc": "2.0", "method": "textDocument/didOpen", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0, "languageId": "nix", "text": "{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n"}}}
[stderr] e[15:37:49.579] [nixd] --> textDocument/didOpen {"jsonrpc": "2.0", "method": "textDocument/didOpen", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0, "languageId": "nix", "text": "{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n"}}}
[stderr] e[15:37:49.579] [tix#1] --> textDocument/didOpen {"jsonrpc": "2.0", "method": "textDocument/didOpen", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0, "languageId": "nix", "text": "{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n"}}}
[stderr] i[15:37:49.580] [nixd] V[15:37:49.579] 582333: <<< {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"languageId":"nix","text":"{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n","uri":"file:///home/bbigras/tmp/test/flake.nix","version":0}}}
[stderr] i[15:37:49.580] [nixd] I[15:37:49.579] 582333: <-- textDocument/didOpen
[stderr] i[15:37:49.580] [nixd] I[15:37:49.580] 582333: --> notify textDocument/publishDiagnostics
[stderr] i[15:37:49.580] [nixd] V[15:37:49.580] 582333: >>> {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"sema-unused-def-lambda-noarg-formal","message":"attribute `config` of argument is not used","range":{"end":{"character":26,"line":19},"start":{"character":20,"line":19}},"relatedInformation":[],"severity":2,"source":"nixf","tags":[1]},{"code":"sema-unused-def-lambda-noarg-formal","message":"attribute `inputs'` of argument is not used","range":{"end":{"character":42,"line":19},"start":{"character":35,"line":19}},"relatedInformation":[],"severity":2,"source":"nixf","tags":[1]},{"code":"sema-unused-def-lambda-noarg-formal","message":"attribute `self'` of argument is not used","range":{"end":{"character":33,"line":19},"start":{"character":28,"line":19}},"relatedInformation":[],"severity":2,"source":"nixf","tags":[1]},{"code":"sema-unused-def-lambda-noarg-formal","message":"attribute `system` of argument is not used","range":{"end":{"character":56,"line":19},"start":{"character":50,"line":19}},"relatedInformation":[],"severity":2,"source":"nixf","tags":[1]}],"uri":"file:///home/bbigras/tmp/test/flake.nix","version":0}}
[stderr] e[15:37:49.580] [nixd] <-- textDocument/publishDiagnostics {"jsonrpc": "2.0", "method": "textDocument/publishDiagnostics", "params": {"diagnostics": [{"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `config` of argument is not used", "range": {"end": {"character": 26, "line": 19}, "start": {"character": 20, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1]}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `inputs'` of argument is not used", "range": {"end": {"character": 42, "line": 19}, "start": {"character": 35, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1]}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `self'` of argument is not used", "range": {"end": {"character": 33, "line": 19}, "start": {"character": 28, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1]}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `system` of argument is not used", "range": {"end": {"character": 56, "line": 19}, "start": {"character": 50, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1]}], "uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0}}
[stderr] e[15:37:49.580] <-- $/streamDiagnostics {"jsonrpc": "2.0", "method": "$/streamDiagnostics", "params": {"diagnostics": [{"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `config` of argument is not used", "range": {"end": {"character": 26, "line": 19}, "start": {"character": 20, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1], "data": 139901049279872}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `inputs'` of argument is not used", "range": {"end": {"character": 42, "line": 19}, "start": {"character": 35, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1], "data": 139901049280640}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `self'` of argument is not used", "range": {"end": {"character": 33, "line": 19}, "start": {"character": 28, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1], "data": 139901049281024}, {"code": "sema-unused-def-lambda-noarg-formal", "message": "attribute `system` of argument is not used", "range": {"end": {"character": 56, "line": 19}, "start": {"character": 50, "line": 19}}, "relatedInformation": [], "severity": 2, "source": "nixf", "tags": [1], "data": 139901049281408}], "uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0, "token": "nixd-139901049199248"}}
[stderr] i[15:37:49.580] [tix#1] [2026-04-09T19:37:49Z INFO tix_lsp::server] flake.nix: total 0.4ms (parse 0.2ms, lower 0.0ms, nameres 0.0ms, imports 0.0ms, check 0.2ms)
[stderr] e[15:37:49.580] [tix#1] <-- window/logMessage {"jsonrpc": "2.0", "method": "window/logMessage", "params": {"message": "flake.nix: total 0.4ms (parse 0.2ms, lower 0.0ms, nameres 0.0ms, imports 0.0ms, check 0.2ms)", "type": 3}}
[stderr] e[15:37:49.580] <-- window/logMessage {"jsonrpc": "2.0", "method": "window/logMessage", "params": {"message": "flake.nix: total 0.4ms (parse 0.2ms, lower 0.0ms, nameres 0.0ms, imports 0.0ms, check 0.2ms)", "type": 3}}
[stderr] e[15:37:49.581] --> workspace/didChangeConfiguration {"jsonrpc": "2.0", "method": "workspace/didChangeConfiguration", "params": {"settings": {}}}
[stderr] e[15:37:49.581] [nixd] --> workspace/didChangeConfiguration {"jsonrpc": "2.0", "method": "workspace/didChangeConfiguration", "params": {"settings": {}}}
[stderr] e[15:37:49.581] [tix#1] --> workspace/didChangeConfiguration {"jsonrpc": "2.0", "method": "workspace/didChangeConfiguration", "params": {"settings": {}}}
[stderr] i[15:37:49.581] [nixd] V[15:37:49.581] 582333: <<< {"jsonrpc":"2.0","method":"workspace/didChangeConfiguration","params":{"settings":{}}}
[stderr] i[15:37:49.581] [nixd] I[15:37:49.581] 582333: <-- workspace/didChangeConfiguration
[stderr] i[15:37:49.581] [nixd] I[15:37:49.581] 582333: --> call workspace/configuration(2)
[stderr] i[15:37:49.581] [nixd] V[15:37:49.581] 582333: >>> {"id":2,"jsonrpc":"2.0","method":"workspace/configuration","params":{"items":[{"section":"nixd"}]}}
[stderr] e[15:37:49.581] [nixd] <-s workspace/configuration[2] {"id": 2, "jsonrpc": "2.0", "method": "workspace/configuration", "params": {"items": [{"section": "nixd"}]}}
[stderr] e[15:37:49.581] <-s workspace/configuration[1] {"id": 1, "jsonrpc": "2.0", "method": "workspace/configuration", "params": {"items": [{"section": "nixd"}]}}
[stderr] e[15:37:49.582] [nixd] s-> workspace/configuration[1] {"jsonrpc": "2.0", "id": 1, "result": [null]}
[stderr] i[15:37:49.582] [nixd] V[15:37:49.582] 582333: <<< {"id":1,"jsonrpc":"2.0","result":[null]}
[stderr] i[15:37:49.582] [nixd] I[15:37:49.582] 582333: <-- reply(1)
[stderr] i[15:37:49.582] [nixd] E[15:37:49.582] 582333: workspace/configuration: parse error expected object
[stderr] e[15:37:49.582] --> textDocument/semanticTokens/full[2] {"jsonrpc": "2.0", "id": 2, "method": "textDocument/semanticTokens/full", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] e[15:37:49.582] [nixd] --> textDocument/semanticTokens/full[2] {"jsonrpc": "2.0", "id": 2, "method": "textDocument/semanticTokens/full", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:49.583] [nixd] V[15:37:49.583] 582333: <<< {"id":2,"jsonrpc":"2.0","method":"textDocument/semanticTokens/full","params":{"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:49.583] [nixd] I[15:37:49.583] 582333: <-- textDocument/semanticTokens/full(2)
[stderr] i[15:37:49.583] [nixd] I[15:37:49.583] 582333: --> reply:textDocument/semanticTokens/full(2)
[stderr] i[15:37:49.583] [nixd] V[15:37:49.583] 582333: >>> {"id":2,"jsonrpc":"2.0","result":{"data":[1,2,11,10,0,0,14,29,1,0,2,2,6,10,0,1,4,11,10,0,0,12,3,10,0,0,6,32,1,0,1,4,7,10,0,0,8,3,10,0,0,6,37,1,0,3,2,7,10,0,0,10,6,11,0,0,9,11,12,0,1,4,11,5,0,0,12,3,3,0,0,4,7,3,0,1,6,7,10,0,8,6,7,10,0,0,12,14,1,0,0,15,15,1,0,0,16,16,1,0,0,17,15,1,0,1,6,9,10,0,0,14,6,12,0,0,8,5,12,0,0,7,7,12,0,0,9,4,12,0,0,6,6,12,0,6,8,8,10,0,0,9,7,10,0,0,10,4,5,0,0,5,5,3,0,2,6,5,10,0],"resultId":""}}
[stderr] e[15:37:49.583] [nixd] <-- textDocument/semanticTokens/full[2] {"id": 2, "jsonrpc": "2.0", "result": {"data": [1, 2, 11, 10, 0, 0, 14, 29, 1, 0, 2, 2, 6, 10, 0, 1, 4, 11, 10, 0, 0, 12, 3, 10, 0, 0, 6, 32, 1, 0, 1, 4, 7, 10, 0, 0, 8, 3, 10, 0, 0, 6, 37, 1, 0, 3, 2, 7, 10, 0, 0, 10, 6, 11, 0, 0, 9, 11, 12, 0, 1, 4, 11, 5, 0, 0, 12, 3, 3, 0, 0, 4, 7, 3, 0, 1, 6, 7, 10, 0, 8, 6, 7, 10, 0, 0, 12, 14, 1, 0, 0, 15, 15, 1, 0, 0, 16, 16, 1, 0, 0, 17, 15, 1, 0, 1, 6, 9, 10, 0, 0, 14, 6, 12, 0, 0, 8, 5, 12, 0, 0, 7, 7, 12, 0, 0, 9, 4, 12, 0, 0, 6, 6, 12, 0, 6, 8, 8, 10, 0, 0, 9, 7, 10, 0, 0, 10, 4, 5, 0, 0, 5, 5, 3, 0, 2, 6, 5, 10, 0], "resultId": ""}}
[stderr] e[15:37:49.583] <-- textDocument/semanticTokens/full[2] {"id": 2, "jsonrpc": "2.0", "result": {"data": [1, 2, 11, 10, 0, 0, 14, 29, 1, 0, 2, 2, 6, 10, 0, 1, 4, 11, 10, 0, 0, 12, 3, 10, 0, 0, 6, 32, 1, 0, 1, 4, 7, 10, 0, 0, 8, 3, 10, 0, 0, 6, 37, 1, 0, 3, 2, 7, 10, 0, 0, 10, 6, 11, 0, 0, 9, 11, 12, 0, 1, 4, 11, 5, 0, 0, 12, 3, 3, 0, 0, 4, 7, 3, 0, 1, 6, 7, 10, 0, 8, 6, 7, 10, 0, 0, 12, 14, 1, 0, 0, 15, 15, 1, 0, 0, 16, 16, 1, 0, 0, 17, 15, 1, 0, 1, 6, 9, 10, 0, 0, 14, 6, 12, 0, 0, 8, 5, 12, 0, 0, 7, 7, 12, 0, 0, 9, 4, 12, 0, 0, 6, 6, 12, 0, 6, 8, 8, 10, 0, 0, 9, 7, 10, 0, 0, 10, 4, 5, 0, 0, 5, 5, 3, 0, 2, 6, 5, 10, 0], "resultId": ""}}
[stderr] e[15:37:49.587] [nixd] s-> workspace/configuration[2] {"jsonrpc": "2.0", "id": 2, "result": [null]}
[stderr] i[15:37:49.588] [nixd] V[15:37:49.588] 582333: <<< {"id":2,"jsonrpc":"2.0","result":[null]}
[stderr] i[15:37:49.588] [nixd] I[15:37:49.588] 582333: <-- reply(2)
[stderr] i[15:37:49.588] [nixd] E[15:37:49.588] 582333: workspace/configuration: parse error expected object
[stderr] e[15:37:49.781] [tix#1] <-- textDocument/publishDiagnostics {"jsonrpc": "2.0", "method": "textDocument/publishDiagnostics", "params": {"diagnostics": [{"code": "E014", "codeDescription": {"href": "https://jrmurr.github.io/tix/diagnostics/e014.html"}, "message": "type of `default` could not be inferred — consider adding a type annotation or stub", "range": {"end": {"character": 24, "line": 25}, "start": {"character": 17, "line": 25}}, "severity": 4, "source": "tix"}], "uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0}}
[stderr] e[15:37:49.782] <-- $/streamDiagnostics {"jsonrpc": "2.0", "method": "$/streamDiagnostics", "params": {"diagnostics": [{"code": "E014", "codeDescription": {"href": "https://jrmurr.github.io/tix/diagnostics/e014.html"}, "message": "type of `default` could not be inferred — consider adding a type annotation or stub", "range": {"end": {"character": 24, "line": 25}, "start": {"character": 17, "line": 25}}, "severity": 4, "source": "tix", "data": 139901049274624}], "uri": "file:///home/bbigras/tmp/test/flake.nix", "version": 0, "token": "tix#1-139901049225296"}}
[stderr] i[15:37:49.841] [nixd] V[15:37:49.840] 582333: <<< {"id":1,"jsonrpc":"2.0","result":null}
[stderr] i[15:37:49.841] [nixd] I[15:37:49.840] 582333: <-- reply(1)
[stderr] e[15:37:50.010] --> textDocument/codeAction[3] {"jsonrpc": "2.0", "id": 3, "method": "textDocument/codeAction", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "range": {"start": {"line": 0, "character": 0}, "end": {"line": 0, "character": 0}}, "context": {"diagnostics": [], "triggerKind": 2}}}
[stderr] e[15:37:50.010] --> textDocument/documentHighlight[4] {"jsonrpc": "2.0", "id": 4, "method": "textDocument/documentHighlight", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] e[15:37:50.010] --> textDocument/hover[5] {"jsonrpc": "2.0", "id": 5, "method": "textDocument/hover", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] e[15:37:50.010] --> textDocument/signatureHelp[6] {"jsonrpc": "2.0", "id": 6, "method": "textDocument/signatureHelp", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] e[15:37:50.010] [nixd] --> textDocument/codeAction[3] {"jsonrpc": "2.0", "id": 3, "method": "textDocument/codeAction", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "range": {"start": {"line": 0, "character": 0}, "end": {"line": 0, "character": 0}}, "context": {"diagnostics": [], "triggerKind": 2}}}
[stderr] e[15:37:50.010] [tix#1] --> textDocument/codeAction[3] {"jsonrpc": "2.0", "id": 3, "method": "textDocument/codeAction", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "range": {"start": {"line": 0, "character": 0}, "end": {"line": 0, "character": 0}}, "context": {"diagnostics": [], "triggerKind": 2}}}
[stderr] e[15:37:50.010] [nixd] --> textDocument/documentHighlight[4] {"jsonrpc": "2.0", "id": 4, "method": "textDocument/documentHighlight", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] e[15:37:50.010] [nixd] --> textDocument/hover[5] {"jsonrpc": "2.0", "id": 5, "method": "textDocument/hover", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] e[15:37:50.010] [nixd] --> textDocument/signatureHelp[6] {"jsonrpc": "2.0", "id": 6, "method": "textDocument/signatureHelp", "params": {"textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix"}, "position": {"line": 0, "character": 0}}}
[stderr] i[15:37:50.010] [nixd] V[15:37:50.010] 582333: <<< {"id":3,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[],"triggerKind":2},"range":{"end":{"character":0,"line":0},"start":{"character":0,"line":0}},"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:50.010] [nixd] I[15:37:50.010] 582333: <-- textDocument/codeAction(3)
[stderr] i[15:37:50.010] [nixd] V[15:37:50.010] 582333: <<< {"id":4,"jsonrpc":"2.0","method":"textDocument/documentHighlight","params":{"position":{"character":0,"line":0},"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:50.010] [nixd] I[15:37:50.010] 582333: <-- textDocument/documentHighlight(4)
[stderr] i[15:37:50.010] [nixd] V[15:37:50.010] 582333: <<< {"id":5,"jsonrpc":"2.0","method":"textDocument/hover","params":{"position":{"character":0,"line":0},"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:50.010] [nixd] I[15:37:50.010] 582333: <-- textDocument/hover(5)
[stderr] i[15:37:50.010] [nixd] V[15:37:50.010] 582333: <<< {"id":6,"jsonrpc":"2.0","method":"textDocument/signatureHelp","params":{"position":{"character":0,"line":0},"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix"}}}
[stderr] i[15:37:50.010] [nixd] I[15:37:50.010] 582333: <-- textDocument/signatureHelp(6)
[stderr] i[15:37:50.010] [nixd] I[15:37:50.010] 582333: --> reply:textDocument/hover(5)
[stderr] i[15:37:50.011] [nixd] V[15:37:50.010] 582333: >>> {"id":5,"jsonrpc":"2.0","result":null}
[stderr] i[15:37:50.011] [nixd] E[15:37:50.010] 582333: textDocument/documentHighlight failed: cannot find variable on given node
[stderr] i[15:37:50.011] [nixd] I[15:37:50.010] 582333: --> reply:textDocument/documentHighlight(4)
[stderr] e[15:37:50.011] [nixd] <-- textDocument/hover[5] {"id": 5, "jsonrpc": "2.0", "result": null}
[stderr] e[15:37:50.011] <-- textDocument/hover[5] {"id": 5, "jsonrpc": "2.0", "result": null}
[stderr] i[15:37:50.011] [nixd] V[15:37:50.011] 582333: >>> {"id":4,"jsonrpc":"2.0","result":[]}
[stderr] i[15:37:50.011] [nixd] I[15:37:50.011] 582333: --> reply:textDocument/codeAction(3)
[stderr] e[15:37:50.011] [nixd] <-- textDocument/documentHighlight[4] {"id": 4, "jsonrpc": "2.0", "result": []}
[stderr] e[15:37:50.011] <-- textDocument/documentHighlight[4] {"id": 4, "jsonrpc": "2.0", "result": []}
[stderr] e[15:37:50.011] [tix#1] <-- textDocument/codeAction[3] {"jsonrpc": "2.0", "result": null, "id": 3}
[stderr] d[15:37:50.011] Message from tix#1 starts aggregation for textDocument/codeAction (139901049226576)
[stderr] i[15:37:50.011] [nixd] V[15:37:50.011] 582333: >>> {"id":3,"jsonrpc":"2.0","result":[{"edit":{"documentChanges":[{"kind":"create","options":{"ignoreIfExists":false,"overwrite":false},"uri":"file:///home/bbigras/tmp/test/extracted-attrs.nix"},{"edits":[{"newText":"{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n","range":{"end":{"character":0,"line":0},"start":{"character":0,"line":0}}}],"textDocument":{"uri":"file:///home/bbigras/tmp/test/extracted-attrs.nix","version":0}},{"edits":[{"newText":"import ./extracted-attrs.nix","range":{"end":{"character":1,"line":34},"start":{"character":0,"line":0}}}],"textDocument":{"uri":"file:///home/bbigras/tmp/test/flake.nix","version":null}}]},"kind":"refactor","title":"Extract to extracted-attrs.nix"}]}
[stderr] e[15:37:50.011] [nixd] <-- textDocument/codeAction[3] {"id": 3, "jsonrpc": "2.0", "result": [{"edit": {"documentChanges": [{"kind": "create", "options": {"ignoreIfExists": false, "overwrite": false}, "uri": "file:///home/bbigras/tmp/test/extracted-attrs.nix"}, {"edits": [{"newText": "{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n", "range": {"end": {"character": 0, "line": 0}, "start": {"character": 0, "line": 0}}}], "textDocument": {"uri": "file:///home/bbigras/tmp/test/extracted-attrs.nix", "version": 0}}, {"edits": [{"newText": "import ./extracted-attrs.nix", "range": {"end": {"character": 1, "line": 34}, "start": {"character": 0, "line": 0}}}], "textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix", "version": null}}]}, "kind": "refactor", "title": "Extract to extracted-attrs.nix"}]}
[stderr] d[15:37:50.011] Message from nixd continues aggregation for textDocument/codeAction (139901049226576)
[stderr] d[15:37:50.011] Completing aggregation for textDocument/codeAction (139901049226576)!
[stderr] e[15:37:50.011] <-- textDocument/codeAction[3] {"result": [{"edit": {"documentChanges": [{"kind": "create", "options": {"ignoreIfExists": false, "overwrite": false}, "uri": "file:///home/bbigras/tmp/test/extracted-attrs.nix"}, {"edits": [{"newText": "{\n description = \"Description for the project\";\n\n inputs = {\n flake-parts.url = \"github:hercules-ci/flake-parts\";\n nixpkgs.url = \"github:NixOS/nixpkgs/nixos-unstable\";\n };\n\n outputs = inputs@{ flake-parts, ... }:\n flake-parts.lib.mkFlake { inherit inputs; } {\n imports = [\n # To import an internal flake module: ./other.nix\n # To import an external flake module:\n # 1. Add foo to inputs\n # 2. Add foo as a parameter to the outputs function\n # 3. Add here: foo.flakeModule\n\n ];\n systems = [ \"x86_64-linux\" \"aarch64-linux\" \"aarch64-darwin\" \"x86_64-darwin\" ];\n perSystem = { config, self', inputs', pkgs, system, ... }: {\n # Per-system attributes can be defined here. The self' and inputs'\n # module parameters provide easy access to attributes of the same\n # system.\n\n # Equivalent to inputs'.nixpkgs.legacyPackages.hello;\n packages.default = pkgs.hello;\n };\n flake = {\n # The usual flake attributes can be defined here, including system-\n # agnostic ones like nixosModule and system-enumerating ones, although\n # those are more easily expressed in perSystem.\n\n };\n };\n}\n", "range": {"end": {"character": 0, "line": 0}, "start": {"character": 0, "line": 0}}}], "textDocument": {"uri": "file:///home/bbigras/tmp/test/extracted-attrs.nix", "version": 0}}, {"edits": [{"newText": "import ./extracted-attrs.nix", "range": {"end": {"character": 1, "line": 34}, "start": {"character": 0, "line": 0}}}], "textDocument": {"uri": "file:///home/bbigras/tmp/test/flake.nix", "version": null}}]}, "kind": "refactor", "title": "Extract to extracted-attrs.nix", "data": 139901049105664}], "id": 3, "jsonrpc": "2.0"}
[stderr] i[15:37:50.012] [nixd] I[15:37:50.011] 582333: --> notify exit
[stderr] i[15:37:50.012] [nixd] V[15:37:50.011] 582333: >>> {"jsonrpc":"2.0","method":"exit","params":null}
[stderr] i[15:37:50.268] [nixd] I[15:37:50.268] 582333: --> notify exit
[stderr] i[15:37:50.268] [nixd] V[15:37:50.268] 582333: >>> {"jsonrpc":"2.0","method":"exit","params":null}
[stderr] i[15:37:50.280] Error: Server nixd died unexpectedly
[stderr] i[15:37:50.280] Fatal error: Server nixd crashed
[jsonrpc] D[15:37:50.292] Connection state change: `exited abnormally with code 1
'
----------b---y---e---b---y---e----------
[stderr]
[stderr] Process EGLOT (test/(nix-mode)) stderr finished
Describe the bug
nixd seems to exit when I try to use it with rass (a lsp multiplexer) and tix.
nixd+rass+nil seems fine.
Logs
Configuration
To Reproduce
nix flake init -t github:hercules-ci/flake-partsrass --log-level debug -- nixd -- tix lspExpected behavior
not a crash
Screenshots
No response
Additional context
No response