added oneapi ollama
This commit is contained in:
parent
cf30b5d7be
commit
00af3ac5ec
@ -25,6 +25,7 @@
|
|||||||
inputs.home-manager.nixosModules.default
|
inputs.home-manager.nixosModules.default
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
|
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
|
||||||
|
(import ./overlays/ollama.nix)
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -34,6 +35,7 @@
|
|||||||
./hosts/server/configuration.nix
|
./hosts/server/configuration.nix
|
||||||
inputs.home-manager.nixosModules.default
|
inputs.home-manager.nixosModules.default
|
||||||
nixos-hardware.nixosModules.system76
|
nixos-hardware.nixosModules.system76
|
||||||
|
(import ./overlays/ollama.nix)
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -31,10 +31,8 @@
|
|||||||
|
|
||||||
ollama = {
|
ollama = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.ollama.overrideAttrs (oldAttrs: {
|
package = pkgs.ollama-intel;
|
||||||
NIX_CFLAGS_COMPILE = "${oldAttrs.NIX_CFLAGS_COMPILE or ""} -mavx2 -mfma -march=native -O3";
|
};
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
gitea = {
|
gitea = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
40
overlays/ollama.nix
Normal file
40
overlays/ollama.nix
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
ollama-intel = prev.ollama.overrideAttrs (oldAttrs: {
|
||||||
|
buildInputs = oldAttrs.buildInputs or [ ]
|
||||||
|
++ [ prev.intel-compute-runtime.drivers ];
|
||||||
|
propagatedBuildInputs = oldAttrs.propagetedBuildInputs or [ ]
|
||||||
|
++ [ prev.intel-compute-runtime.drivers ];
|
||||||
|
|
||||||
|
NIX_CFLAGS_COMPILE =
|
||||||
|
"${oldAttrs.NIX_CFLAGS_COMPILE or ""} -mavx2 -mfma -O3";
|
||||||
|
cmakeFlags = [
|
||||||
|
"GGML_NATIVE=true"
|
||||||
|
"BUILD_SHARED_LIBS=true"
|
||||||
|
"GGML_BLAS=true"
|
||||||
|
"GGML_SYCL=true"
|
||||||
|
"GGML_SYCL_F16=false"
|
||||||
|
"CMAKE_C_COMPILER=icx"
|
||||||
|
"CMAKE_CXX_COMPILER=icpx"
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = (oldAttrs.postInstall or "") + ''
|
||||||
|
mkdir -p "$out/bin"
|
||||||
|
cat << EOF > "$out/bin/ollama-wrapped"
|
||||||
|
#!/bin/sh
|
||||||
|
export LD_LIBRARY_PATH="${prev.intel-compute-runtime.drivers}/lib"
|
||||||
|
export OLLAMA_INTEL_GPU=-1
|
||||||
|
exec "$out/bin/ollama-base" "\$@"
|
||||||
|
EOF
|
||||||
|
chmod +x "$out/bin/ollama-wrapped"
|
||||||
|
mv $out/bin/ollama $out/bin/ollama-base
|
||||||
|
ln -s "$out/bin/ollama-wrapped" "$out/bin/ollama"
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user