{ inputs, lib, pkgs, ... }: { imports = [ ../../lib inputs.disko.nixosModules.disko (import ./format.nix { device = "/dev/disk/by-id/nvme-SAMSUNG_MZVL22T0HBLB-00BL2_S64RNE0R602762"; }) ./hardware-configuration.nix ../common/system/configs/bluetooth ../common/system/configs/boot ../common/system/configs/brightnessctl ../common/system/configs/btop ../common/system/configs/btrfs ../common/system/configs/cpu ../common/system/configs/docker ../common/system/configs/fastfetch ../common/system/configs/getty ../common/system/configs/git ../common/system/configs/gpg-agent ../common/system/configs/impermanence ../common/system/configs/ncdu ../common/system/configs/neovim ../common/system/configs/networking ../common/system/configs/nix ../common/system/configs/nix-ld ../common/system/configs/nixpkgs ../common/system/configs/ntp ../common/system/configs/pipewire ../common/system/configs/plymouth ../common/system/configs/powertop ../common/system/configs/printing ../common/system/configs/ranger ../common/system/configs/sops ../common/system/configs/ssh ../common/system/configs/system ../common/system/configs/timezone ../common/system/configs/tlp ../common/system/configs/tmux ../common/system/configs/tree ../common/system/configs/users ../common/system/configs/wget ../common/system/configs/zsh ../common/system/scripts/cleanup ./users/nick.nix ]; networking.hostName = "eirene"; i18n.defaultLocale = "en_US.UTF-8"; sops.defaultSopsFile = ./secrets/secrets.yaml; # https://github.com/NixOS/nixos-hardware/tree/master/lenovo/legion/16achg6 hardware = { enableAllFirmware = true; cpu = { cores = 8; threads = 16; amd.updateMicrocode = true; }; nvidia = { modesetting.enable = true; powerManagement.enable = true; open = false; prime = { offload = { enable = true; enableOffloadCmd = true; }; nvidiaBusId = "PCI:1:0:0"; amdgpuBusId = "PCI:6:0:0"; }; }; graphics = { enable32Bit = true; extraPackages = with pkgs; [ amdvlk driversi686Linux.amdvlk rocmPackages.clr rocmPackages.clr.icd ]; }; }; powerManagement = { enable = true; powertop.enable = true; }; systemd.services.powertop.postStart = builtins.readFile ./scripts/mouse.sh; services = { xserver.videoDrivers = [ "nvidia" ]; fstrim.enable = true; tlp.settings.DISK_DEVICES = "nvme0n1 nvme1n1"; }; boot = { kernelParams = [ "amd_pstate=active" "video=eDP-1:2560x1600@165" ]; initrd.kernelModules = [ "amdgpu" ]; }; nixpkgs.config = { cudaSupport = true; rocmSupport = true; }; programs = { steam.package = pkgs.steam.override { extraEnv.STEAM_FORCE_DESKTOPUI_SCALING = 1.25; }; gamescope = { env = { __NV_PRIME_RENDER_OFFLOAD = "1"; __VK_LAYER_NV_optimus = "NVIDIA_only"; __GLX_VENDOR_LIBRARY_NAME = "nvidia"; }; args = [ "-W 2560" "-H 1600" ]; }; }; home-manager.sharedModules = [ { wayland.windowManager.hyprland.settings = { monitor = "eDP-1, 2560x1600@165, 0x0, 1.25"; env = [ "WLR_DRM_DEVICES,$HOME/.config/hypr/card" ]; device = [ { name = "syna2ba6:00-06cb:ce44-touchpad"; sensitivity = 0.5; } ]; gestures.workspace_swipe_distance = 600; }; programs = { zsh.loginExtra = lib.mkBefore (builtins.readFile ./scripts/card.sh); # VSCode does not play well with fractional scaling vscode.userSettings."window.zoomLevel" = (1.25 - 1) / 0.2; }; theme = { cursor.size = 24; }; } ]; }