diff --git a/config/hosts/aspects/doloro-desktop/home.nix b/config/hosts/aspects/doloro-desktop/home.nix index ff61369..d3d369e 100644 --- a/config/hosts/aspects/doloro-desktop/home.nix +++ b/config/hosts/aspects/doloro-desktop/home.nix @@ -42,8 +42,8 @@ # modules.easyeffects # modules.lavd - # modules.ai - modules.pi-coding # inactive: swapped to opencode + modules.ai + # modules.pi-coding # inactive: swapped to opencode # modules.omp modules.podman modules.wivrn diff --git a/config/modules/ai/pi.nix b/config/modules/ai/pi.nix index 28978c9..816726c 100644 --- a/config/modules/ai/pi.nix +++ b/config/modules/ai/pi.nix @@ -17,7 +17,7 @@ ]; settings = { "defaultProvider" = "opencode-go"; - "defaultModel" = "mimo-v2.5"; + "defaultModel" = "mimo-v2.6-flash"; "defaultThinkingLevel" = "medium"; "litellm" = { "providers" = { diff --git a/config/modules/nixvim/default.nix b/config/modules/nixvim/default.nix index 8c1e40b..9ea2af8 100644 --- a/config/modules/nixvim/default.nix +++ b/config/modules/nixvim/default.nix @@ -29,31 +29,31 @@ rev = "0d040ed81f7953118b81cd12681fcdfcac069803"; hash = "sha256-UF9zeO5Uujdt2MEwy2d2Lhk6JRnEN4vrEvYslv0/zaA"; }; - nvimSkipModules = [ "tiny-code-action.previewers.snacks" ]; - }; - cmp-lsp-rs = pkgs.vimUtils.buildVimPlugin { - name = "nvim-cmp-lsp-rs"; - src = pkgs.fetchFromGitHub { - owner = "zjp-CN"; - repo = "nvim-cmp-lsp-rs"; - rev = "329075b806deb719d3ce4f55a7e443541ce5289d"; - hash = "sha256-rBABhsShCrx7Gofm1mC6DQAL0KeNtQidW9eMr9kfwGI="; - }; - # nvim-cmp on rtp during the require check (cmp_lsp_rs requires cmp.types.lsp at load time) - dependencies = [ pkgs.vimPlugins.nvim-cmp ]; - }; - treesitter-rhai-grammar = pkgs.tree-sitter.buildGrammar { - language = "rhai"; - version = "0.0.0+rev=4ac7384"; - src = pkgs.fetchFromGitHub { - owner = "elkowar"; - repo = "tree-sitter-rhai"; - rev = "4ac7384d487ffcb54e746ef1569585a749370c5b"; - hash = "sha256-XGGcEGHke/O00STKqwSk9jGj91Xm2LE2KxwwX5+bBg0="; - }; - meta.homepage = "https://github.com/elkowar/tree-sitter-rhai"; - }; - in + nvimSkipModules = [ "tiny-code-action.previewers.snacks" ]; + }; + cmp-lsp-rs = pkgs.vimUtils.buildVimPlugin { + name = "nvim-cmp-lsp-rs"; + src = pkgs.fetchFromGitHub { + owner = "zjp-CN"; + repo = "nvim-cmp-lsp-rs"; + rev = "329075b806deb719d3ce4f55a7e443541ce5289d"; + hash = "sha256-rBABhsShCrx7Gofm1mC6DQAL0KeNtQidW9eMr9kfwGI="; + }; + # nvim-cmp on rtp during the require check (cmp_lsp_rs requires cmp.types.lsp at load time) + dependencies = [ pkgs.vimPlugins.nvim-cmp ]; + }; + treesitter-rhai-grammar = pkgs.tree-sitter.buildGrammar { + language = "rhai"; + version = "0.0.0+rev=4ac7384"; + src = pkgs.fetchFromGitHub { + owner = "elkowar"; + repo = "tree-sitter-rhai"; + rev = "4ac7384d487ffcb54e746ef1569585a749370c5b"; + hash = "sha256-XGGcEGHke/O00STKqwSk9jGj91Xm2LE2KxwwX5+bBg0="; + }; + meta.homepage = "https://github.com/elkowar/tree-sitter-rhai"; + }; + in { imports = [ inputs.nixvim.homeModules.nixvim @@ -142,14 +142,14 @@ }; }; }; - lsp = { - enable = true; - onAttach = '' - if client.name == "rust-analyzer" then - client.server_capabilities.semanticTokensProvider = nil - end - ''; - servers = { + lsp = { + enable = true; + onAttach = '' + if client.name == "rust-analyzer" then + client.server_capabilities.semanticTokensProvider = nil + end + ''; + servers = { # qmlls = { # enable = true; # config = { @@ -179,6 +179,7 @@ enable = true; package = pkgs.vscode-langservers-extracted; }; + lua_ls.enable = true; svelte.enable = true; }; }; @@ -282,16 +283,16 @@ "" = "cmp.mapping(function(fallback) if cmp.visible() then cmp.select_next_item() elseif require('luasnip').expand_or_jumpable() then require('luasnip').expand_or_jump() else fallback() end end, {'i', 's'})"; }; - sorting = { - comparators = [ - "require('cmp.config.compare').exact" - "require('cmp.config.compare').score" - "require('cmp_lsp_rs').comparators.inscope_inherent_import" - "require('cmp_lsp_rs').comparators.sort_by_label_but_underscore_last" - ]; - }; - window = { - completion = { + sorting = { + comparators = [ + "require('cmp.config.compare').exact" + "require('cmp.config.compare').score" + "require('cmp_lsp_rs').comparators.inscope_inherent_import" + "require('cmp_lsp_rs').comparators.sort_by_label_but_underscore_last" + ]; + }; + window = { + completion = { border = "rounded"; winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None"; }; @@ -309,27 +310,29 @@ wakatime.enable = true; treesitter = { enable = true; - grammarPackages = (with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ - bash - css - html - javascript - json - lua - make - markdown - rust - nix - regex - toml - tsx - typescript - vim - vimdoc - xml - yaml - svelte - ]) ++ [ treesitter-rhai-grammar ]; + grammarPackages = + (with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ + bash + css + html + javascript + json + lua + make + markdown + rust + nix + regex + toml + tsx + typescript + vim + vimdoc + xml + yaml + svelte + ]) + ++ [ treesitter-rhai-grammar ]; settings = { highlight.enable = true; indent.enable = false;