snowflake/hosts/tsuki/default.nix
2024-10-08 09:35:18 -04:00

97 lines
1.8 KiB
Nix
Executable file

{
inputs,
pkgs,
...
}: {
imports = [
inputs.nix-gaming.nixosModules.pipewireLowLatency
inputs.nix-gaming.nixosModules.platformOptimizations
inputs.hyprland.nixosModules.default
./hardware.nix
./services
./networking.nix
../common.nix
../../home/wayland
../../modules
../../modules/fonts.nix
../../pkgs/overlays.nix
];
virtualisation = {
libvirtd.enable = true;
waydroid.enable = true;
};
programs.hyprland = {
enable = true;
# finalPackage = inputs.hyprland.packages.${pkgs.system}.default;
portalPackage = inputs.xdg-portal-hyprland.packages.${pkgs.system}.default;
};
services = {
pcscd.enable = true;
flatpak.enable = true;
avahi = {
enable = true;
openFirewall = true;
};
pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
lowLatency = {
enable = false; # disabled due to upstream issue
quantum = 64;
rate = 48000;
};
};
xserver = {
enable = true;
videoDrivers = ["amdgpu"];
xkb = {
layout = "us";
variant = "";
};
};
};
security = {
rtkit.enable = true;
polkit.enable = true;
pam = {
services.hyprlock = {};
};
};
programs = {
gamemode.enable = true;
steam = {
enable = true;
platformOptimizations.enable = true;
extraCompatPackages = [
pkgs.proton-ge-bin
];
};
};
hardware = {
pulseaudio.enable = false;
graphics = {
enable = true;
enable32Bit = true;
};
opentabletdriver = {
enable = true;
daemon.enable = true;
};
};
environment.systemPackages = with pkgs; [
nil
dconf
libvirt
qemu_kvm
zulu
zulu17
];
}