snowflake/hosts/tsuki/default.nix

111 lines
2 KiB
Nix
Raw Normal View History

2023-04-23 17:45:37 -04:00
{
2023-04-09 18:01:28 -04:00
config,
pkgs,
...
2023-03-31 18:15:58 -04:00
}: {
2023-04-23 17:45:37 -04:00
imports = [
2023-01-31 12:18:27 -05:00
./hardware-configuration.nix
../../home/wayland
../../modules
../../modules/fonts.nix
2023-04-23 17:45:37 -04:00
];
2023-01-31 12:18:27 -05:00
2023-04-23 17:45:37 -04:00
# bootloader
2023-01-31 12:18:27 -05:00
boot.loader = {
systemd-boot = {
enable = true;
configurationLimit = 8;
2023-01-31 12:18:27 -05:00
};
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot/efi";
};
};
boot.kernelPackages = pkgs.linuxPackages_latest;
2023-04-23 17:45:37 -04:00
boot.extraModulePackages = with config.boot.kernelPackages; [v4l2loopback.out];
boot.kernelModules = ["v4l2loopback" "kvm-intel"];
2023-01-31 12:18:27 -05:00
virtualisation.libvirtd.enable = true;
2023-03-31 18:15:58 -04:00
networking = {
hostName = "tsuki";
2023-01-31 12:18:27 -05:00
};
services = {
xserver = {
2023-04-23 17:45:37 -04:00
enable = true;
videoDrivers = ["nvidia"];
layout = "us";
xkbVariant = "";
};
2023-01-31 12:18:27 -05:00
};
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
pinentryFlavor = "gtk2";
};
2023-02-03 09:58:36 -05:00
2023-01-31 12:18:27 -05:00
services.pcscd.enable = true;
sound.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
};
programs.steam = {
enable = true;
};
2023-04-23 17:45:37 -04:00
2023-01-31 12:18:27 -05:00
security.polkit.enable = true;
security.pam.services.swaylock = {
text = ''
auth include login
2023-04-23 17:45:37 -04:00
'';
2023-01-31 12:18:27 -05:00
};
2023-04-23 17:45:37 -04:00
hardware = {
2023-01-31 12:18:27 -05:00
nvidia = {
powerManagement.enable = true;
modesetting.enable = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
opengl = {
2023-04-23 17:45:37 -04:00
enable = true;
extraPackages = with pkgs; [
nvidia-vaapi-driver
];
};
opentabletdriver = {
enable = true;
daemon.enable = true;
};
};
2023-01-31 12:18:27 -05:00
users = {
2023-04-23 17:45:37 -04:00
defaultUserShell = pkgs.nushell;
users.notoh = {
isNormalUser = true;
description = "notoh";
extraGroups = ["networkmanager" "wheel" "disk" "video"];
};
2023-01-31 12:18:27 -05:00
};
environment.systemPackages = with pkgs; [
2023-04-23 17:45:37 -04:00
wget
dconf
polkit_gnome
libvirt
qemu_kvm
pinentry-gtk2
nfs-utils
jdk17
];
2023-01-31 12:18:27 -05:00
}