infrastructure/machines/krz01/_configuration.nix
Ryan Lahfa 34640d467b
Some checks failed
Check meta / check_meta (pull_request) Successful in 18s
Check meta / check_dns (pull_request) Successful in 19s
build configuration / build_compute01 (pull_request) Failing after 1m16s
build configuration / push_to_cache_compute01 (pull_request) Has been skipped
build configuration / build_storage01 (pull_request) Successful in 1m10s
build configuration / build_vault01 (pull_request) Successful in 1m15s
build configuration / build_web01 (pull_request) Successful in 1m39s
build configuration / build_web02 (pull_request) Successful in 1m21s
build configuration / build_geo01 (pull_request) Successful in 1m4s
build configuration / build_rescue01 (pull_request) Successful in 1m12s
lint / check (pull_request) Successful in 25s
build configuration / build_geo02 (pull_request) Successful in 1m4s
build configuration / build_bridge01 (pull_request) Successful in 1m8s
build configuration / push_to_cache_storage01 (pull_request) Successful in 1m24s
build configuration / push_to_cache_vault01 (pull_request) Successful in 1m20s
build configuration / push_to_cache_geo01 (pull_request) Successful in 1m29s
build configuration / push_to_cache_web01 (pull_request) Successful in 2m10s
build configuration / push_to_cache_web02 (pull_request) Successful in 1m17s
build configuration / push_to_cache_rescue01 (pull_request) Successful in 1m16s
build configuration / push_to_cache_bridge01 (pull_request) Successful in 1m4s
build configuration / push_to_cache_geo02 (pull_request) Successful in 1m15s
build configuration / build_krz01 (pull_request) Successful in 15m22s
build configuration / push_to_cache_krz01 (pull_request) Successful in 2m5s
Check meta / check_meta (push) Successful in 18s
Check meta / check_dns (push) Successful in 18s
build configuration / build_compute01 (push) Failing after 1m14s
build configuration / push_to_cache_compute01 (push) Has been skipped
build configuration / build_storage01 (push) Successful in 1m17s
build configuration / build_vault01 (push) Successful in 1m10s
build configuration / build_web01 (push) Successful in 1m38s
build configuration / build_krz01 (push) Successful in 2m0s
build configuration / build_web02 (push) Successful in 1m9s
lint / check (push) Successful in 24s
build configuration / build_geo01 (push) Successful in 1m5s
build configuration / build_rescue01 (push) Successful in 1m13s
build configuration / build_geo02 (push) Successful in 1m6s
build configuration / build_bridge01 (push) Successful in 1m0s
build configuration / push_to_cache_storage01 (push) Successful in 1m32s
build configuration / push_to_cache_web02 (push) Successful in 1m29s
build configuration / push_to_cache_geo01 (push) Successful in 1m17s
build configuration / push_to_cache_vault01 (push) Successful in 1m51s
build configuration / push_to_cache_web01 (push) Successful in 1m58s
build configuration / push_to_cache_krz01 (push) Successful in 2m25s
build configuration / push_to_cache_geo02 (push) Successful in 1m11s
build configuration / push_to_cache_bridge01 (push) Successful in 1m7s
build configuration / push_to_cache_rescue01 (push) Successful in 1m29s
feat(krz01): finish ollama integration and whisper.cpp
My sanity was used in the process.

Signed-off-by: Ryan Lahfa <ryan@dgnum.eu>
2024-10-09 13:59:05 +02:00

72 lines
1.7 KiB
Nix

{
config,
lib,
pkgs,
...
}:
lib.extra.mkConfig {
enabledModules = [
# INFO: This list needs to stay sorted alphabetically
];
enabledServices = [
# INFO: This list needs to stay sorted alphabetically
"microvm-router01"
"nvidia-tesla-k80"
"proxmox"
# Machine learning API machine
"microvm-ml01"
];
extraConfig = {
microvm = {
host.enable = true;
};
dgn-hardware = {
useZfs = true;
zfsPools = [
"dpool"
"ppool0"
];
};
services.netbird.enable = true;
# We are going to use CUDA here.
nixpkgs.config.cudaSupport = true;
hardware.graphics.enable = true;
environment.systemPackages = [
((pkgs.openai-whisper-cpp.override { cudaPackages = pkgs.cudaPackages_11; }).overrideAttrs (old: {
src = pkgs.fetchFromGitHub {
owner = "ggerganov";
repo = "whisper.cpp";
rev = "v1.7.1";
hash = "sha256-EDFUVjud79ZRCzGbOh9L9NcXfN3ikvsqkVSOME9F9oo=";
};
env = {
WHISPER_CUBLAS = "";
GGML_CUDA = "1";
};
# We only need Compute Capability 3.7.
CUDA_ARCH_FLAGS = [ "sm_37" ];
# We are GPU-only anyway.
patches = (old.patches or [ ]) ++ [
./no-weird-microarch.patch
./all-nvcc-arch.patch
];
}))
];
services.ollama = {
enable = true;
package = pkgs.callPackage ./ollama.nix {
cudaPackages = pkgs.cudaPackages_11;
# We need to thread our nvidia x11 driver for CUDA.
extraLibraries = [ config.hardware.nvidia.package ];
};
};
users.users.root.hashedPassword = "$y$j9T$eNZQgDN.J5y7KTG2hXgat1$J1i5tjx5dnSZu.C9B7swXi5zMFIkUnmRrnmyLHFAt8/";
};
root = ./.;
}