{ 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. ./hardware-configuration.nix ../../modules/common.nix ../../modules/dev.nix ]; boot.loader.grub = { enable = true; device = "nodev"; efiSupport = true; }; boot.loader.efi.canTouchEfiVariables = false; boot.loader.efi.efiSysMountPoint = "/boot/efi"; networking.hostName = "desktop"; networking.wireless.iwd.enable = true; networking.wireless.iwd.settings = { General.EnableNetworkConfiguration = true; }; networking.nameservers = [ "1.1.1.1" "8.8.8.8" ]; services.xserver.videoDrivers = [ "amdgpu" ]; services.ollama = { enable = true; package = unstable.ollama; acceleration = "rocm"; rocmOverrideGfx = "10.3.0"; environmentVariables = { # This forces ROCm to see ONLY the RX 6800. # On most Ryzen 7000 systems, '0' is the dGPU and '1' is the iGPU. HIP_VISIBLE_DEVICES = "0"; ROCR_VISIBLE_DEVICES = "0"; # Keep these for RDNA 2 stability with 26B models HSA_OVERRIDE_GFX_VERSION = "10.3.0"; HSA_ENABLE_SDMA = "0"; }; }; environment.variables.HSA_OVERRIDE_GFX_VERSION = "10.3.0"; system.stateVersion = "25.11"; }