nixos/nixos/hosts/unicorn/default.nix
2025-03-30 22:00:44 -07:00

65 lines
1.8 KiB
Nix

{ pkgs, config, inputs, lib, ... }: {
imports = [
./hardware-configuration.nix
../../client.nix
../../features/amd.nix
../../features/bluetooth.nix
../../features/dns-cache.nix
../../features/nas0.nix
../../features/plasma6.nix
../../features/podman.nix
../../features/sound
../../features/steam.nix
../../features/tailscale.nix
../../features/telemetry
../../features/wifi.nix
../../features/protonvpn.nix
../../features/wine.nix
./rgb.nix
inputs.nixos-hardware.nixosModules.common-cpu-amd
inputs.nixos-hardware.nixosModules.common-gpu-amd
inputs.nixos-hardware.nixosModules.common-gpu-nvidia # prime
inputs.nixos-hardware.nixosModules.common-pc-laptop
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
inputs.nixos-hardware.nixosModules.common-hidpi
];
home-manager.users.noe = import ../../../home-manager/noe/hosts/unicorn.nix;
networking.hostName = "unicorn";
system.stateVersion = "25.05";
internal.nas0.useSMB = true;
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
hardware.nvidia.open = false;
hardware.nvidia.modesetting.enable = true;
hardware.nvidia.prime = {
offload = {
enable = true;
enableOffloadCmd = true;
};
amdgpuBusId = "PCI:5:0:0";
nvidiaBusId = "PCI:1:0:0";
};
# always enable prime (fixes vulkan precaching -- it will compile them on AMD, trust aki, deal with it.)
programs.steam.package = lib.mkForce pkgs.steam.override {
extraPkgs = pkgs: with pkgs; [
libkrb5
keyutils
];
extraEnv = {
__NV_PRIME_RENDER_OFFLOAD="1";
__NV_PRIME_RENDER_OFFLOAD_PROVIDER="NVIDIA-G0";
__GLX_VENDOR_LIBRARY_NAME="nvidia";
__VK_LAYER_NV_optimus="NVIDIA_only";
};
};
# √(2560² + 1600²) px / 16 in ≃ 189 dpi
services.xserver.dpi = 189;
}