# Do not modify this file!  It was generated by ‘nixos-generate-config’
# and may be overwritten by future invocations.  Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, inputs, lib, outputs, pkgs, modulesPath, ... }:

{
  imports =
    [ #(modulesPath + "/installer/scan/not-detected.nix")
    ];

  boot = {
    extraModulePackages = [ ];
    initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" ];
    initrd.kernelModules = [ ];
    kernelModules = [ "kvm-amd" ];
    zfs.extraPools = [ "data" ];
  };

  environment.sessionVariables = {
    LIBVA_DRIVER_NAME = "nvidia";
    MOZ_DISABLE_RDD_SANDBOX = "1";
  };

  fileSystems."/srv/nfs/keepers" = {
    device = "/data/home/nipsy/downloads/keepers";
    fsType = "none";
    options = [
      "bind"
      "noauto"
    ];
  };

  fileSystems."/srv/nfs/movies" = {
    device = "/data/home/nipsy/downloads/movies";
    fsType = "none";
    options = [
      "bind"
      "noauto"
    ];
  };

  fileSystems."/srv/nfs/tv" = {
    device = "/data/home/nipsy/downloads/tv";
    fsType = "none";
    options = [
      "bind"
      "noauto"
    ];
  };

  hardware = {
    bluetooth.enable = true;
    graphics = {
      enable = true;
      extraPackages = with pkgs; [ nvidia-vaapi-driver ];
      extraPackages32 = with pkgs.pkgsi686Linux; [ nvidia-vaapi-driver ];
    };
    nvidia = {
      modesetting.enable = true;
      open = true;
      package = pkgs.nvidia-patch.patch-nvenc (pkgs.nvidia-patch.patch-fbc config.boot.kernelPackages.nvidiaPackages.beta);
      #package = config.boot.kernelPackages.nvidiaPackages.beta;
    };
  };
}