feat: add nixd option completion, just-lsp config, and vscode nix settings

This commit is contained in:
2026-04-11 23:42:24 +08:00
parent 95891aa441
commit fbd6761040
4 changed files with 32 additions and 0 deletions
+1
View File
@@ -1,5 +1,6 @@
result result
.direnv .direnv
.nixd.json
# Never commit plaintext secrets # Never commit plaintext secrets
*.dec.yaml *.dec.yaml
+14
View File
@@ -0,0 +1,14 @@
{
"nix.enableLanguageServer": true,
"nix.serverPath": "nixd",
"nix.serverSettings": {
"nixd": {
"formatting": {
"command": ["nixfmt"]
},
"nixpkgs": {
"expr": "import <nixpkgs> {}"
}
}
}
}
+11
View File
@@ -37,3 +37,14 @@ check:
[linux] [linux]
check: check:
@nix eval .#nixosConfigurations.wsl.config.system.build.toplevel > /dev/null && echo "wsl: ok" @nix eval .#nixosConfigurations.wsl.config.system.build.toplevel > /dev/null && echo "wsl: ok"
# Generate .nixd.json for nixd LSP option completion
[macos]
nixd host:
@echo '{"options":{"nix-darwin":{"expr":"(builtins.getFlake (toString ./.)).darwinConfigurations.{{host}}.options"},"home-manager":{"expr":"(builtins.getFlake (toString ./.)).darwinConfigurations.{{host}}.options.home-manager.users.type.getSubOptions []"}}}' | jq . > .nixd.json
@echo "Generated .nixd.json for {{host}}"
[linux]
nixd host="wsl":
@echo '{"options":{"nixos":{"expr":"(builtins.getFlake (toString ./.)).nixosConfigurations.{{host}}.options"},"home-manager":{"expr":"(builtins.getFlake (toString ./.)).nixosConfigurations.{{host}}.options.home-manager.users.type.getSubOptions []"}}}' | jq . > .nixd.json
@echo "Generated .nixd.json for {{host}}"
+6
View File
@@ -1,5 +1,11 @@
{ {
"$schema": "https://opencode.ai/config.json", "$schema": "https://opencode.ai/config.json",
"lsp": {
"just": {
"command": ["just-lsp"],
"extensions": [""]
}
},
"mcp": { "mcp": {
"nixos": { "nixos": {
"type": "local", "type": "local",