blob: 836302e8f93c6930cf054c9809da144de7ba5dcc (
plain) (
tree)
|
|
{ inputs, config, lib, modulesPath, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
(modulesPath + "/installer/scan/not-detected.nix")
./filesystem.nix
../bluetooth.nix
];
#Unfree-packages.
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"nvidia-x11"
"nvidia-settings"
"nvidia-persistenced"
];
#Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
#SSD-optimization
services.fstrim.enable = true;
#OpenGL
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
};
#X11 Server
services.xserver = {
enable = true;
layout = "us";
xkbVariant = "";
videoDrivers = [ "nvidia" ];
displayManager = {
gdm.enable = true;
defaultSession = "none+awesome";
};
windowManager.awesome = {
enable = true;
luaModules = with pkgs.luaPackages; [
luarocks
luadbi-mysql
];
};
};
#NVidia
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = false;
powerManagement.finegrained = false;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
#Virtualization
virtualisation.libvirtd.enable = true;
programs.dconf.enable = true;
environment.systemPackages = with pkgs; [
virt-manager
libguestfs
guestfs-tools
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
|