nixos-config/config/nutty-noon.nix

163 lines
3.8 KiB
Nix
Raw Normal View History

2022-01-27 16:16:42 +00:00
{ config, pkgs, modulesPath, lib, ... }: {
2022-01-18 10:23:54 +00:00
networking.hostName = "nutty-noon";
networking.hostId = "e77e1829";
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
./systemd-boot.nix
2022-01-18 13:55:16 +00:00
./desktop.nix
2022-01-18 10:23:54 +00:00
];
2022-01-19 19:56:15 +00:00
hardware.cpu.amd.updateMicrocode = true;
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" "sr_mod" "k10temp" ];
2022-01-18 11:05:39 +00:00
boot.initrd.kernelModules = [ "amdgpu" ];
2022-01-18 10:23:54 +00:00
boot.kernelModules = [ "kvm-amd" ];
2022-01-21 15:15:48 +00:00
boot.extraModulePackages = [
config.boot.kernelPackages.zenpower
];
boot.kernelPackages = pkgs.linuxKernel.packages.linux_xanmod;
2022-01-18 10:23:54 +00:00
boot.supportedFilesystems = [ "zfs" ];
boot.zfs.devNodes = "/dev/";
services.zfs.trim.enable = true;
services.zfs.autoScrub.enable = true;
services.zfs.autoScrub.pools = [ "ssd" "hdd" ];
boot.initrd.luks.devices = {
ssd = {
device = "/dev/disk/by-partuuid/53773b73-fb8a-4de8-ac58-d9d8ff1be430";
2022-01-18 19:13:49 +00:00
allowDiscards = true;
2022-01-18 10:23:54 +00:00
};
hdd = {
device = "/dev/disk/by-partuuid/d4c6a94f-2ae9-e446-9613-2596c564078c";
};
};
2022-01-18 10:31:22 +00:00
fileSystems."/" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos";
2022-01-18 10:31:22 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/nix" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/nix";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/etc" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/etc";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/var";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var/lib" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/var/lib";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var/log" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/var/log";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/var/spool" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/nixos/var/spool";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/home" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/userdata/home";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/root" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/userdata/home/root";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/home/tank" =
2022-01-19 08:28:39 +00:00
{
device = "ssd/userdata/home/tank";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/home/darkkirb/hdd" =
2022-01-19 08:28:39 +00:00
{
device = "hdd/userdata/home/darkkirb/hdd";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/root/hdd" =
2022-01-19 08:28:39 +00:00
{
device = "hdd/userdata/home/root/hdd";
2022-01-18 10:23:54 +00:00
fsType = "zfs";
options = [ "zfsutil" ];
};
fileSystems."/boot" =
2022-01-19 08:28:39 +00:00
{
device = "/dev/disk/by-uuid/CA0B-E049";
2022-01-18 10:23:54 +00:00
fsType = "vfat";
};
swapDevices = [
{
device = "/dev/disk/by-partuuid/110ae65d-8ea1-214d-bd7b-a6f3e1b5dc3a";
randomEncryption = true;
}
];
networking.interfaces.enp34s0.useDHCP = true;
system.stateVersion = "21.11";
2022-01-18 10:33:32 +00:00
networking.wireguard.interfaces."wg0".ips = [ "fd0d:a262:1fa6:e621:47e6:24d4:2acb:9437/64" ];
home-manager.users.darkkirb = import ./home-manager/darkkirb.nix true;
2022-01-19 08:28:39 +00:00
networking.nameservers = [ "192.168.2.1" ];
2022-01-18 11:05:39 +00:00
services.xserver.videoDrivers = [ "amdgpu" ];
2022-01-19 19:56:15 +00:00
environment.etc."sysconfig/lm_sensors".text = ''
# Generated by sensors-detect on Tue Aug 7 10:54:09 2018
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).
HWMON_MODULES="nct6775"
'';
2022-01-19 19:59:24 +00:00
services.thermald.enable = true;
2022-01-21 15:15:48 +00:00
hardware.opengl.driSupport32Bit = true;
2022-01-21 15:18:38 +00:00
nix.settings.substituters = [
2022-01-27 16:16:42 +00:00
"http://192.168.2.1:9000/cache.int.chir.rs/"
];
nix.settings.cores = 16;
2022-01-18 13:55:16 +00:00
}