67 lines
1.7 KiB
Nix
67 lines
1.7 KiB
Nix
|
{ config, lib, pkgs, ... }:
|
||
|
|
||
|
let
|
||
|
surfacepkgs = import <linux-surface> {};
|
||
|
in {
|
||
|
imports = [ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> ];
|
||
|
|
||
|
boot = {
|
||
|
loader.systemd-boot.enable = true;
|
||
|
loader.efi.canTouchEfiVariables = true;
|
||
|
cleanTmpDir = true;
|
||
|
# kernelPackages = pkgs.linuxPackages_surface;
|
||
|
kernelPackages = surfacepkgs.linuxPackages_surface;
|
||
|
initrd.kernelModules = [ "hid-multitouch" ];
|
||
|
initrd.availableKernelModules = [ "hid-microsoft" "hid-multitouch" "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
|
||
|
kernelModules = [ "kvm-intel" "hid-microsoft" "hid-multitouch" "uinput" ];
|
||
|
extraModulePackages = [ ];
|
||
|
};
|
||
|
|
||
|
fileSystems."/" =
|
||
|
{ device = "/dev/disk/by-uuid/8c3a5a07-9ee1-4154-9f3f-6abc379073aa";
|
||
|
fsType = "ext4";
|
||
|
};
|
||
|
|
||
|
fileSystems."/boot" =
|
||
|
{ device = "/dev/disk/by-uuid/D2A2-C705";
|
||
|
fsType = "vfat";
|
||
|
};
|
||
|
|
||
|
swapDevices = [ ];
|
||
|
|
||
|
hardware = {
|
||
|
firmware = with pkgs; [ firmwareLinuxNonfree surface-firmware ];
|
||
|
cpu.intel.updateMicrocode = true;
|
||
|
enableAllFirmware = true;
|
||
|
enableKSM = true;
|
||
|
opengl = {
|
||
|
driSupport = true;
|
||
|
extraPackages = with pkgs; [ vaapiIntel libvdpau-va-gl vaapiVdpau ];
|
||
|
driSupport32Bit = true;
|
||
|
extraPackages32 = with pkgs.pkgsi686Linux; [ vaapiIntel libvdpau-va-gl vaapiVdpau ];
|
||
|
};
|
||
|
|
||
|
pulseaudio = {
|
||
|
enable = true;
|
||
|
support32Bit = true;
|
||
|
package = pkgs.pulseaudioFull;
|
||
|
zeroconf.discovery.enable = false;
|
||
|
extraClientConf = ''
|
||
|
autospawn = no
|
||
|
'';
|
||
|
};
|
||
|
|
||
|
bluetooth = {
|
||
|
enable = true;
|
||
|
powerOnBoot = true;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
powerManagement = {
|
||
|
enable = true;
|
||
|
cpuFreqGovernor = "powersave";
|
||
|
};
|
||
|
|
||
|
time.timeZone = "Europe/Berlin";
|
||
|
}
|