From aa8289ae28d17869297b8046ed8efd04a5e1016c Mon Sep 17 00:00:00 2001 From: Christian Date: Wed, 8 Apr 2026 13:10:24 -0500 Subject: Local LLM Time --- hosts/desktop/configuration.nix | 18 ++++++++++++++++++ hosts/desktop/hardware-configuration.nix | 23 +++++++++++++++++++++-- 2 files changed, 39 insertions(+), 2 deletions(-) (limited to 'hosts') diff --git a/hosts/desktop/configuration.nix b/hosts/desktop/configuration.nix index cf4c360..96cc210 100644 --- a/hosts/desktop/configuration.nix +++ b/hosts/desktop/configuration.nix @@ -1,5 +1,12 @@ { config, lib, pkgs, inputs, ... }: +let + unstable = import inputs.nixpkgs-unstable { + system = "x86_64-linux"; + config.allowUnfree = true; + config.rocmSupport = true; + }; +in { imports = [ # Include the results of the hardware scan. @@ -25,5 +32,16 @@ "8.8.8.8" ]; + services.xserver.videoDrivers = [ "amdgpu" ]; + + services.ollama = { + enable = true; + package = unstable.ollama; + acceleration = "rocm"; + rocmOverrideGfx = "10.3.0"; + }; + + environment.variables.HSA_OVERRIDE_GFX_VERSION = "10.3.0"; + system.stateVersion = "25.11"; } diff --git a/hosts/desktop/hardware-configuration.nix b/hosts/desktop/hardware-configuration.nix index 7ddea07..ba7f356 100644 --- a/hosts/desktop/hardware-configuration.nix +++ b/hosts/desktop/hardware-configuration.nix @@ -9,10 +9,19 @@ ]; boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; + boot.initrd.kernelModules = [ "amdgpu" ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; + hardware.graphics = { + enable = true; + extraPackages = with pkgs; [ + rocmPackages.clr + rocmPackages.hipblas + rocmPackages.clr.icd + ]; + }; + fileSystems."/" = { device = "/dev/disk/by-uuid/e09483ea-5fb4-472d-99ba-3d4dc9560400"; fsType = "btrfs"; @@ -24,7 +33,17 @@ options = [ "fmask=0077" "dmask=0077" ]; }; - swapDevices = [ ]; + zramSwap = { + enable = true; + algorithm = "zstd"; + memoryPercent = 50; + priority = 100; + }; + + swapDevices = [ { + device = "/swap/swapfile"; + size = 32 * 1024; + } ]; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -- cgit v1.2.3