This commit is contained in:
Tao Tien 2023-09-28 23:33:56 -07:00
parent 24aa0a58e4
commit 76c91fc817
9 changed files with 232 additions and 64 deletions

View file

@ -1,5 +1,10 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
services.xserver.displayManager = {
autoLogin.enable = true;
autoLogin.user = "tao";
};
environment.systemPackages = with pkgs;
[
# mesa
@ -10,16 +15,23 @@
# nvidia-vaapi-driver
];
environment.sessionVariables = {
# wayland chromium workaround
NIXOS_OZONE_WL = "1";
};
fileSystems."/home" = {
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
fsType = "btrfs";
options = [ "subvol=home_snaps/0/snapshot" "noatime" "compress-force=zstd:3" ];
};
fileSystems."/home/.snapshots" = {
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
fsType = "btrfs";
options = [ "subvol=home_snaps/" "noatime" "compress-force=zstd:3" ];
};
fileSystems."/home/tao/Games" = {
device = "/dev/disk/by-uuid/eb9fcce2-e9f3-438a-b5ce-8f72f32f0e09";
fsType = "btrfs";
@ -45,9 +57,23 @@
fsType = "btrfs";
options = [ "subvol=nixos/tmp" ];
};
swapDevices = [{ device = "/dev/disk/by-uuid/ca0ed3d7-8758-4ac7-b016-8b4cd9608ded"; }];
services.snapper.configs =
{
home = {
SUBVOLUME = "/home";
ALLOW_USERS = [ "tao" ];
TIMELINE_CREATE = true;
TIMELINE_CLEANUP = true;
TIMELINE_LIMIT_HOURLY = "5";
TIMELINE_LIMIT_DAILY = "7";
};
};
services.snapper.snapshotInterval = "*:0/5";
# systemd.user.services.fans = {
# description = "NZXT fans to 69% using liquidctl";
# script = ''
@ -56,10 +82,13 @@
# wantedBy = [ "default.target" ];
# };
boot.kernelPackages = pkgs.linuxPackages_latest;
# boot.kernelPackages = pkgs.linuxPackages_latest;
boot.kernelPackages = pkgs.unstable.linuxPackages_latest;
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.kernelModules = [ "i2c-dev" "kvm-amd" ];
hardware.opengl = {
enable = true;
driSupport = true;
@ -67,8 +96,9 @@
};
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = true;
# package = config.boot.kernelPackages.nvidiaPackages.beta;
# package = pkgs.unstable.linuxPackages_latest.nvidiaPackages.production;
package = pkgs.unstable.linuxPackages_latest.nvidiaPackages.production;
};
# enable core and mem freq sliders for nvidia
services.xserver.deviceSection = ''
@ -80,10 +110,13 @@
wantedBy = [ "multi-user.target" ];
};
services.udev.packages = [ pkgs.openrgb ];
services.udev.extraRules = ''
KERNEL=="hidraw*", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="a3c5", MODE="0666"
'';
time.hardwareClockInLocalTime = true;
networking.hostName = "NOcomputer";
}