diff --git a/configurations/home-manager/leyla/packages.nix b/configurations/home-manager/leyla/packages.nix index 506c2b3..13263ea 100644 --- a/configurations/home-manager/leyla/packages.nix +++ b/configurations/home-manager/leyla/packages.nix @@ -8,7 +8,7 @@ hardware = osConfig.host.hardware; in { imports = [ - ./vscode.nix + ./vscode/default.nix ./firefox.nix ]; diff --git a/configurations/home-manager/leyla/vscode.nix b/configurations/home-manager/leyla/vscode.nix deleted file mode 100644 index e42c4cd..0000000 --- a/configurations/home-manager/leyla/vscode.nix +++ /dev/null @@ -1,123 +0,0 @@ -{ - lib, - pkgs, - inputs, - osConfig, - ... -}: let - nix-development-enabled = osConfig.host.nix-development.enable; -in { - nixpkgs = { - overlays = [ - inputs.nix-vscode-extensions.overlays.default - ]; - }; - - programs = { - bash.shellAliases = { - code = "codium"; - }; - - vscode = let - extensions = inputs.nix-vscode-extensions.extensions.${pkgs.system}; - open-vsx = extensions.open-vsx; - vscode-marketplace = extensions.vscode-marketplace; - in { - enable = true; - - package = pkgs.vscodium; - - mutableExtensionsDir = false; - - profiles.default = { - enableUpdateCheck = false; - enableExtensionUpdateCheck = false; - - userSettings = lib.mkMerge [ - { - "workbench.colorTheme" = "Atom One Dark"; - "cSpell.userWords" = [ - "webdav" - ]; - "javascript.updateImportsOnFileMove.enabled" = "always"; - "editor.tabSize" = 2; - "editor.insertSpaces" = false; - } - (lib.mkIf nix-development-enabled { - "nix.enableLanguageServer" = true; - "nix.serverPath" = "nil"; - "[nix]" = { - "editor.defaultFormatter" = "kamadorueda.alejandra"; - "editor.formatOnPaste" = true; - "editor.formatOnSave" = true; - "editor.formatOnType" = true; - }; - "alejandra.program" = "alejandra"; - "nixpkgs" = { - "expr" = "import {}"; - }; - }) - (lib.mkIf osConfig.services.ollama.enable { - "twinny.fileContextEnabled" = true; - "twinny.enableLogging" = false; - "twinny.completionCacheEnabled" = true; - - # builtins.elemAt osConfig.services.ollama.loadModels 0; - }) - ]; - - extensions = ( - with open-vsx; - [ - # vs code feel extensions - ms-vscode.atom-keybindings - akamud.vscode-theme-onedark - streetsidesoftware.code-spell-checker - streetsidesoftware.code-spell-checker-german - streetsidesoftware.code-spell-checker-italian - jeanp413.open-remote-ssh - - # html extensions - formulahendry.auto-rename-tag - ms-vscode.live-server - - # js extensions - dsznajder.es7-react-js-snippets - dbaeumer.vscode-eslint - standard.vscode-standard - firsttris.vscode-jest-runner - stylelint.vscode-stylelint - tauri-apps.tauri-vscode - - # go extensions - golang.go - - # astro blog extensions - astro-build.astro-vscode - unifiedjs.vscode-mdx - - # misc extensions - tamasfe.even-better-toml - ] - ++ ( - lib.lists.optionals osConfig.services.ollama.enable [ - rjmacarthy.twinny - ] - ) - ++ (lib.lists.optionals nix-development-enabled [ - # nix extensions - pinage404.nix-extension-pack - jnoortheen.nix-ide - kamadorueda.alejandra - ]) - ++ ( - with vscode-marketplace; [ - # js extensions - karyfoundation.nearley - ] - ) - ); - }; - }; - }; -} diff --git a/configurations/home-manager/leyla/vscode/default.nix b/configurations/home-manager/leyla/vscode/default.nix index 641fff9..f6cbac7 100644 --- a/configurations/home-manager/leyla/vscode/default.nix +++ b/configurations/home-manager/leyla/vscode/default.nix @@ -6,6 +6,7 @@ ... }: let nix-development-enabled = osConfig.host.nix-development.enable; + ai-tooling-enabled = osConfig.services.ollama.enable; in { nixpkgs = { overlays = [ @@ -28,30 +29,42 @@ in { package = pkgs.vscodium; mutableExtensionsDir = false; - enableUpdateCheck = false; - enableExtensionUpdateCheck = false; - userSettings = lib.mkMerge [ - { - "workbench.colorTheme" = "Atom One Dark"; - "cSpell.language" = "en,de-DE,it"; - "cSpell.userWords" = import ./user-words.nix; - } - (lib.mkIf nix-development-enabled { - "nix.enableLanguageServer" = true; - "nix.serverPath" = "nil"; - "[nix]" = { - "editor.defaultFormatter" = "kamadorueda.alejandra"; - "editor.formatOnPaste" = true; - "editor.formatOnSave" = true; - "editor.formatOnType" = true; - }; - "alejandra.program" = "alejandra"; - "nixpkgs" = { - "expr" = "import {}"; - }; - }) - ]; + profiles.default = { + enableUpdateCheck = false; + enableExtensionUpdateCheck = false; + + userSettings = lib.mkMerge [ + { + "workbench.colorTheme" = "Atom One Dark"; + "cSpell.userWords" = import ./user-words.nix; + "javascript.updateImportsOnFileMove.enabled" = "always"; + "editor.tabSize" = 2; + "editor.insertSpaces" = false; + } + (lib.mkIf nix-development-enabled { + "nix.enableLanguageServer" = true; + "nix.serverPath" = "nil"; + "[nix]" = { + "editor.defaultFormatter" = "kamadorueda.alejandra"; + "editor.formatOnPaste" = true; + "editor.formatOnSave" = true; + "editor.formatOnType" = true; + }; + "alejandra.program" = "alejandra"; + "nixpkgs" = { + "expr" = "import {}"; + }; + }) + (lib.mkIf osConfig.services.ollama.enable { + "twinny.fileContextEnabled" = true; + "twinny.enableLogging" = false; + "twinny.completionCacheEnabled" = true; + + # builtins.elemAt osConfig.services.ollama.loadModels 0; + }) + ]; + }; extensions = ( with open-vsx; @@ -76,12 +89,15 @@ in { stylelint.vscode-stylelint tauri-apps.tauri-vscode + # go extensions + golang.go + # astro blog extensions astro-build.astro-vscode unifiedjs.vscode-mdx # misc extensions - bungcip.better-toml + tamasfe.even-better-toml ] ++ (lib.lists.optionals nix-development-enabled [ # nix extensions @@ -90,10 +106,14 @@ in { kamadorueda.alejandra ]) ++ ( - with vscode-marketplace; [ - # js extensions - karyfoundation.nearley - ] + with vscode-marketplace; + [ + # js extensions + karyfoundation.nearley + ] + ++ (lib.lists.optionals ai-tooling-enabled [ + continue.continue + ]) ) ); }; diff --git a/configurations/home-manager/leyla/vscode/user-words.nix b/configurations/home-manager/leyla/vscode/user-words.nix index 94a85a2..4444c30 100644 --- a/configurations/home-manager/leyla/vscode/user-words.nix +++ b/configurations/home-manager/leyla/vscode/user-words.nix @@ -1,3 +1,4 @@ [ "leyla" + "webdav" ] diff --git a/configurations/nixos/twilight/configuration.nix b/configurations/nixos/twilight/configuration.nix index 3d8e6b1..c007932 100644 --- a/configurations/nixos/twilight/configuration.nix +++ b/configurations/nixos/twilight/configuration.nix @@ -37,9 +37,12 @@ enable = true; loadModels = [ - "deepseek-coder:6.7b" - "deepseek-r1:8b" - "deepseek-r1:32b" + "llama3.1:8b" + "qwen2.5-coder:1.5b-base" + "nomic-embed-text:latest" + # "deepseek-coder:6.7b" + # "deepseek-r1:8b" + # "deepseek-r1:32b" ]; };