mirror of
https://github.com/Alexandre1a/NixOSDots.git
synced 2026-03-10 00:09:46 +01:00
29 lines
622 B
Nix
29 lines
622 B
Nix
{ pkgs, lib, config, ... }:
|
|
|
|
let
|
|
|
|
hasNvidiaGpu = config.hardware.nvidia.package or null != null;
|
|
|
|
gpu =
|
|
if hasNvidiaGpu then
|
|
pkgs.ollama-cuda
|
|
else if builtins.hasAttr "vulkan" pkgs then
|
|
pkgs.ollama-vulkan
|
|
else if builtins.hasAttr "amd" pkgs then
|
|
pkgs.ollama-rocm
|
|
else if pkgs.stdenv.isDarwin then
|
|
pkgs.ollama # Ollama uses Metal by default
|
|
else
|
|
pkgs.ollama; # CPU fallback
|
|
in
|
|
{
|
|
services = {
|
|
ollama = {
|
|
enable = true;
|
|
loadModels = [ "codegemma:7b-instruct" "codegemma:7b-code" "codegemma:2b" "starcoder2:7b" ];
|
|
package = gpu;
|
|
};
|
|
};
|
|
|
|
}
|