{ inputs, pkgs, ... }: { imports = [ inputs.hardware.nixosModule.common-cpu-intel inputs.hardware.nixosModule.common-pc-ssd ./hardware-configuration.nix # Hardware configuration generated by nix-generate-config ../common/user/ooks # Add and configure the user "ooks" ../common/base # Default system programs ../common/features/vm.nix # Adds VM support ../common/features/greetd.nix # Adds login-manager greetd ]; networking = { hostName = "ooksdesk"; # Define hostname networkmanager.enable = true; # Networking tool }; boot = { kernelPackages = pkgs.linuxKernel.packages.linux_zen; # Kernel version supportedFilesystems = ["ntfs"]; # Add ntfs support }; programs = { dconf.enable = true; # Low level configuration system kdeconnect.enable = true; # Adds android connectivity over local network gnupg.agent = { # Daemon to request and cache passwords for the keychain enable = true; enableSSHSupport = true; }; }; xdg.portal = { # Allows cross-desktop communication enable = true; wlr.enable = true; # Adds Wayland support }; hardware = { opengl = { # Used for rendering 2D and 3D graphics enable = true; driSupport = true; driSupport32Bit = true; extraPackages = with pkgs; [nvidia-vaapi-driver]; # Adds nvidia VAAPI driver for hardware-accelerated video decoding }; nvidia = { open = true; # Use Nvidia's open source kernel module modesetting.enable = true; # Enables kernel modesettings nvidiaSettings = true; # Nvidia's settings GUI }; }; services = { dbus = { # Allows communication between applications enable = true; packages = [ pkgs.gcr ]; # GNOME cryptographic services, used for managing cryptographic keys }; xserver.videoDrivers = ["nvidia"]; # Required for Nvidia to work udisks2 = { # Used to manage mounting of temp storage enable = true; mountOnMedia = true; # Auto mounts device to /media }; }; environment = { variables = { # Environment variables for nvidia GBM_BACKEND = "nvidia-drm"; LIBVA_DRIVER_NAME = "nvidia"; __GLX_VENDOR_LIBRARY_NAME = "nvidia"; }; systemPackages = with pkgs; [ # Vulkan packages vulkan-loader vulkan-validation-layers vulkan-tools ]; }; system = { stateVersion = "22.05"; }; }