{ # config, pkgs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ]; # ------------ System ------------ boot.loader.efi.efiSysMountPoint = "/boot/efi"; boot.loader.grub.enableCryptodisk = true; boot.initrd = { luks.devices."root" = { device = "/dev/disk/by-uuid/25e06c9e-3f53-4abc-a656-d8b388b27f58"; # UUID for /dev/nvme01np2 preLVM = true; keyFile = "/keyfile0.bin"; allowDiscards = true; }; secrets = { # Create /mnt/etc/secrets/initrd directory and copy keys to it "keyfile0.bin" = "/etc/secrets/initrd/keyfile0.bin"; "keyfile1.bin" = "/etc/secrets/initrd/keyfile1.bin"; }; }; # Data mount fileSystems."/data" = { device = "/dev/disk/by-uuid/12c28d9c-f781-499c-bd58-ad2608c9322a"; # UUID for /dev/mapper/crypted-data encrypted = { enable = true; label = "crypted-data"; blkDev = "/dev/disk/by-uuid/3f16043b-ab85-42af-a3aa-a687372dae67"; # UUID for /dev/nvme1n1p1 keyFile = "/keyfile1.bin"; }; }; time.timeZone = "America/New_York"; networking.hostName = "jwst"; # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It's perfectly fine and recommended to leave # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). system.stateVersion = "23.11"; # Did you read the comment? # ------------ Graphics ------------ hardware.opengl.extraPackages = with pkgs; [ intel-compute-runtime vaapiVdpau ]; hardware.nvidia = { modesetting.enable = true; powerManagement.enable = false; powerManagement.finegrained = false; open = false; nvidiaSettings = true; prime = { offload.enable = true; offload.enableOffloadCmd = true; intelBusId = "PCI:0:2:0"; nvidiaBusId = "PCI:1:0:0"; }; }; services.xserver.videoDrivers = ["nvidia"]; }