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}";
modelsPath = "${providerPath}/models";
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 (
file:
let
@@ -26,7 +46,7 @@ let
in
{
name = modelName;
display_name = parsed.name;
display_name = parsed.name or modelName;
max_tokens = parsed.limit.context or parsed.limit.output or 128000;
}
) modelFiles;
@@ -40,24 +60,14 @@ let
opencodeProviders = map getModelsFromProvider [
"opencode"
"opencode-go"
"fireworks-ai"
"firepass"
];
openaiCompatibleProviders = builtins.listToAttrs (
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 {
pname = "ameba-ls";
version = "0.1.0";
@@ -138,7 +148,7 @@ in
};
agent_servers = {
OpenCode = {
command = lib.getExe opencode-wrapped;
command = "opencode";
args = [ "acp" ];
type = "custom";
};
@@ -199,6 +209,10 @@ in
];
};
};
TypeScript.language_servers = [
"tsgo"
"vtsls"
];
};
lsp = with pkgs; {
nixd.binary.path = lib.getExe nixd;
@@ -344,7 +358,7 @@ in
}
{
label = "opencode";
command = lib.getExe opencode-wrapped;
command = "opencode";
reveal = "always";
allow_concurrent_runs = true;
use_new_terminal = false;