update zed config

This commit is contained in:
Joakim Repomaa
2026-05-29 19:10:43 +03:00
parent 0e4657fa3a
commit d33876753e

View File

@@ -16,7 +16,27 @@ let
providerPath = "${models-dev}/providers/${provider}"; providerPath = "${models-dev}/providers/${provider}";
modelsPath = "${providerPath}/models"; modelsPath = "${providerPath}/models";
providerToml = builtins.fromTOML (builtins.readFile "${providerPath}/provider.toml"); providerToml = builtins.fromTOML (builtins.readFile "${providerPath}/provider.toml");
modelFiles = builtins.attrNames (builtins.readDir modelsPath);
findAllTomlFiles =
path:
let
entries = builtins.readDir path;
files = builtins.filter (name: builtins.match ".*\\.toml$" name != null) (
builtins.attrNames (lib.filterAttrs (_: type: type == "regular") entries)
);
dirs = builtins.attrNames (lib.filterAttrs (_: type: type == "directory") entries);
nestedFiles = builtins.concatMap (
dir:
let
nestedPath = "${path}/${dir}";
nestedTomlFiles = findAllTomlFiles nestedPath;
in
map (file: "${dir}/${file}") nestedTomlFiles
) dirs;
in
files ++ nestedFiles;
modelFiles = findAllTomlFiles modelsPath;
modelEntries = map ( modelEntries = map (
file: file:
let let
@@ -26,7 +46,7 @@ let
in in
{ {
name = modelName; name = modelName;
display_name = parsed.name; display_name = parsed.name or modelName;
max_tokens = parsed.limit.context or parsed.limit.output or 128000; max_tokens = parsed.limit.context or parsed.limit.output or 128000;
} }
) modelFiles; ) modelFiles;
@@ -40,24 +60,14 @@ let
opencodeProviders = map getModelsFromProvider [ opencodeProviders = map getModelsFromProvider [
"opencode" "opencode"
"opencode-go" "opencode-go"
"fireworks-ai"
"firepass"
]; ];
openaiCompatibleProviders = builtins.listToAttrs ( openaiCompatibleProviders = builtins.listToAttrs (
map (p: lib.nameValuePair p.name p) opencodeProviders map (p: lib.nameValuePair p.name p) opencodeProviders
); );
opencode-wrapped = pkgs.writeShellScriptBin "opencode" ''
set -a
for file in .env .env.local; do
[ -e "$file" ] && source "$file"
done
set +a
${lib.getExe pkgs-unstable.opencode} "$@"
'';
ameba-ls = pkgs.stdenv.mkDerivation rec { ameba-ls = pkgs.stdenv.mkDerivation rec {
pname = "ameba-ls"; pname = "ameba-ls";
version = "0.1.0"; version = "0.1.0";
@@ -138,7 +148,7 @@ in
}; };
agent_servers = { agent_servers = {
OpenCode = { OpenCode = {
command = lib.getExe opencode-wrapped; command = "opencode";
args = [ "acp" ]; args = [ "acp" ];
type = "custom"; type = "custom";
}; };
@@ -199,6 +209,10 @@ in
]; ];
}; };
}; };
TypeScript.language_servers = [
"tsgo"
"vtsls"
];
}; };
lsp = with pkgs; { lsp = with pkgs; {
nixd.binary.path = lib.getExe nixd; nixd.binary.path = lib.getExe nixd;
@@ -344,7 +358,7 @@ in
} }
{ {
label = "opencode"; label = "opencode";
command = lib.getExe opencode-wrapped; command = "opencode";
reveal = "always"; reveal = "always";
allow_concurrent_runs = true; allow_concurrent_runs = true;
use_new_terminal = false; use_new_terminal = false;