nixos-config/machines/zero.nix
2024-05-10 01:20:50 +02:00

76 lines
2 KiB
Nix

{ my, pkgs, ... }:
{
imports = [
../secrets/machines/zero.nix
../system/automation-target.nix
../system/desktop.nix
../system/ucode-amd.nix
];
system.stateVersion = "23.05";
boot.initrd.availableKernelModules =
[ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
boot.blacklistedKernelModules = [ "acpi_cpufreq" ];
boot.kernelParams = [ "amd_pstate=active" "amdgpu.sg_display=0" ];
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/B369-D2FE";
fsType = "vfat";
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/5151f79a-fca4-45d4-8bd9-66f157a1d51f";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/home" = {
device = "/dev/disk/by-uuid/5151f79a-fca4-45d4-8bd9-66f157a1d51f";
fsType = "btrfs";
options = [ "subvol=@home" ];
};
fileSystems."/nix" = {
device = "/dev/disk/by-uuid/5151f79a-fca4-45d4-8bd9-66f157a1d51f";
fsType = "btrfs";
options = [ "noatime" "subvol=@nix" ];
};
fileSystems."/var/log" = {
device = "/dev/disk/by-uuid/5151f79a-fca4-45d4-8bd9-66f157a1d51f";
fsType = "btrfs";
options = [ "noatime" "subvol=@log" ];
};
networking.interfaces.eno1.wakeOnLan.enable = true;
home-manager.users.christoph = {
my = {
applications.personal.enable = true;
emails.personal.enable = true;
terminal.fontSize = 10.5;
};
home.packages = with pkgs; [ prismlauncher ];
wayland.windowManager.sway.config = let
inherit (my.machines.zero) displays;
# Assigns five workspaces, starting at `base`, to output `output`.
makeWorkspaceOutputAssignList = base: output:
builtins.genList (x: {
inherit output;
workspace = toString (base + x);
}) 5;
in {
workspaceOutputAssign =
(makeWorkspaceOutputAssignList 1 (builtins.elemAt displays 0))
++ (makeWorkspaceOutputAssignList 6 (builtins.elemAt displays 1));
assigns."6" = [{ app_id = "firefox"; }];
};
};
}