about summary refs log tree commit diff
path: root/hardware/laptop/hardware.nix
diff options
context:
space:
mode:
authorBaitinq <manuelpalenzuelamerino@gmail.com>2022-09-20 02:18:09 +0200
committerBaitinq <manuelpalenzuelamerino@gmail.com>2022-09-20 02:23:35 +0200
commitdaaf66420582db82f8cad09510324656d429d229 (patch)
treed335d4265669c7ad3dee658389bacda787830b42 /hardware/laptop/hardware.nix
parentMisc: Remove code duplication by merging sets (diff)
downloadnixos-config-daaf66420582db82f8cad09510324656d429d229.tar.gz
nixos-config-daaf66420582db82f8cad09510324656d429d229.tar.bz2
nixos-config-daaf66420582db82f8cad09510324656d429d229.zip
Fully separate hosts from hardwares
Now hosts/ and hardware/ live under different directories and their
joined system configurations are permutated and exposed throught the
host-hardware outputs
Diffstat (limited to 'hardware/laptop/hardware.nix')
-rw-r--r--hardware/laptop/hardware.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/hardware/laptop/hardware.nix b/hardware/laptop/hardware.nix
new file mode 100644
index 0000000..cbec828
--- /dev/null
+++ b/hardware/laptop/hardware.nix
@@ -0,0 +1,58 @@
+{ config, lib, inputs, pkgs, modulesPath, ... }:
+let
+  powerMode = "performance";
+in
+{
+  imports = [
+    ./disks.nix
+  ];
+
+  boot = {
+    initrd = {
+      availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" "sdhci_pci" ];
+      kernelModules = [ ];
+    };
+    kernelPackages = pkgs.linuxPackages_zen;
+    kernelModules = [ "kvm_intel" ];
+    extraModulePackages = [ ];
+    kernelParams = [ "net.ifnames=0" "biosdevname=0" "iomem=relaxed" "mitigations=off" ];
+  };
+
+  powerManagement.cpuFreqGovernor = powerMode;
+
+  services = {
+    xserver = {
+      videoDrivers = [ "nvidia" ];
+
+      # Enable touchpad support (enabled default in most desktopManager).
+      synaptics = {
+        enable = true;
+        palmDetect = true;
+        twoFingerScroll = true;
+        minSpeed = "1.0";
+        maxSpeed = "1.12";
+        accelFactor = "0.01";
+      };
+    };
+  };
+
+  hardware = {
+    opengl = {
+      enable = true;
+      driSupport = true;
+    };
+
+    nvidia = {
+      prime = {
+        sync.enable = true;
+
+        # Bus ID of the NVIDIA GPU. You can find it using lspci, either under 3D or VGA
+        nvidiaBusId = "PCI:1:0:0";
+
+        # Bus ID of the Intel GPU. You can find it using lspci, either under 3D or VGA
+        intelBusId = "PCI:0:2:0";
+      };
+    };
+  };
+
+}