1

Compare commits

...

3 Commits

3 changed files with 61 additions and 4 deletions

View File

@ -3,6 +3,7 @@
pkgs,
nixosConfig,
config,
hostname,
lib,
mylib,
username,
@ -52,8 +53,8 @@
opencode = {
enable = true;
enableMcpIntegration = true;
extraPackages = [
# pkgs.opencode-claude-auth # Installed using npm
extraPackages = with pkgs; [
# opencode-claude-auth # Installed using npm
];
# Writes opencode.json
@ -86,8 +87,54 @@
command = ["alejandra" "$FILE"];
extensions = [".nix"];
};
perltidy = {
command = ["perltidy" "$FILE"];
extensions = [".pl"];
};
};
lsp = {
nixd = {
command = ["nixd"];
extensions = [".nix"];
initialization = {
preferences = {
nixd = {
nixpkgs = {expr = "import <nixpkgs> {}";};
options = {
nixos = {expr = "(builtins.getFlake \"/home/${username}/NixFlake\").nixosConfigurations.${hostname}.options";};
home-manager = {expr = "(builtins.getFlake \"/home/${username}/NixFlake\").nixosConfigurations.\"${hostname}\".options.home-manager.users.type.getSubOptions []";};
};
diagnostic = {
suppress = ["sema-escaping-with" "var-bind-to-this" "escaping-this-with"];
};
};
};
};
};
perlnavigator = {
command = ["perlnavigator"];
extensions = [".pl"];
initialization = {
preferences = {};
};
};
# perlpls = {
# command = ["pls"];
# extensions = [".pl"];
# initialization = {
# preferences = {
# perl = {
# perlcritic = {enabled = false;};
# syntax = {enabled = true;};
# };
# };
# };
# };
r-language-server = {
command = ["R" "--no-echo" "-e" "languageserver::run()"];
extensions = [".r" ".rmd" ".quarto"];
};
};
lsp = true;
permission = {
"*" = "ask";
"read" = "allow";
@ -99,7 +146,7 @@
plugin = [
"opencode-claude-auth@latest" # https://github.com/griffinmartin/opencode-claude-auth
"@tarquinen/opencode-dcp@latest" # better compacting
"@slkiser/opencode-quota"
# "@slkiser/opencode-quota"
];
share = "disabled";
shell = "fish";

View File

@ -1472,6 +1472,14 @@ in {
url = "http://localhost:12345",
start = false,
},
events = {
permissions = {
edits = {
-- Disable neovim diff popup tab
enabled = false,
},
},
},
}
vim.o.autoread = true -- Required for `vim.g.opencode_opts.events.reload`

View File

@ -160,6 +160,8 @@ in {
czkawka-full # file deduplicator
binaryninja-free # reverse engineering
tableplus # database explorer
# opencode-desktop
lmstudio # TODO: Ollama
# Office
kdePackages.wacomtablet # For xournalpp/krita