nixos-config/hosts/rainbow.nix

86 lines
2.2 KiB
Nix
Raw Normal View History

2022-10-25 21:18:53 -03:00
# 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,
lib,
pkgs,
modulesPath,
...
}:
let
btrfs_options = [
"compress=zstd:3"
"noatime"
"x-systemd.device-timeout=0"
];
btrfs_ssd = [
"ssd"
"discard=async"
];
2023-01-22 18:12:04 -03:00
in
{
2022-11-07 11:24:40 -03:00
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
2022-10-25 21:18:53 -03:00
boot.initrd.availableKernelModules = [
"xhci_pci"
"ahci"
"usb_storage"
"usbhid"
"sd_mod"
];
2023-01-12 15:10:10 -03:00
boot.initrd.kernelModules = [ "i915" ];
2022-10-25 21:18:53 -03:00
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
2022-11-07 11:24:40 -03:00
fileSystems."/" = {
device = "/dev/disk/by-label/BTRFS_ROOT";
2022-11-07 11:24:40 -03:00
fsType = "btrfs";
options = [ "subvol=@nixos" ] ++ btrfs_options ++ btrfs_ssd;
2022-11-07 11:24:40 -03:00
};
2022-10-25 21:18:53 -03:00
boot.initrd.luks.devices = {
"main" = {
bypassWorkqueues = true;
device = "/dev/disk/by-label/CRYPT_ROOT";
};
};
2022-10-25 21:18:53 -03:00
2022-11-07 11:24:40 -03:00
fileSystems."/home" = {
device = "/dev/disk/by-label/BTRFS_ROOT";
2022-11-07 11:24:40 -03:00
fsType = "btrfs";
options = [ "subvol=@home" ] ++ btrfs_options ++ btrfs_ssd;
2022-11-07 11:24:40 -03:00
};
2022-10-25 21:18:53 -03:00
2022-12-21 23:19:36 -03:00
boot.loader.efi.efiSysMountPoint = "/boot/efi";
2022-11-07 11:24:40 -03:00
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/DC3B-5753";
fsType = "vfat";
};
2022-10-25 21:18:53 -03:00
2022-11-07 11:24:40 -03:00
fileSystems."/swap" = {
device = "/dev/disk/by-label/BTRFS_ROOT";
2022-11-07 11:24:40 -03:00
fsType = "btrfs";
options = [ "subvol=@swap" ] ++ btrfs_ssd;
2022-11-07 11:24:40 -03:00
};
2022-10-25 21:18:53 -03:00
swapDevices = [
{
device = "/swap/swapfile";
size = (1024 * 8);
}
];
2022-10-25 21:18:53 -03:00
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
2022-10-25 21:18:53 -03:00
networking.hostName = "rainbow"; # Define your hostname.
}