nix/system/hosts/alien/default.nix

95 lines
2.2 KiB
Nix

{
config,
pkgs,
lib,
...
}:
{
environment.systemPackages = with pkgs; [
ddcutil
mangohud
openrgb
p7zip
protontricks
zenity
wineWow64Packages.stable
wineWow64Packages.waylandFull
];
# enable ddcutil
users.users.sckova.extraGroups = [ "i2c" ];
boot.extraModulePackages = [ config.boot.kernelPackages.ddcci-driver ];
boot.kernelModules = [
"i2c-dev"
"ddcci_backlight"
];
services.udev.extraRules = ''
KERNEL=="i2c-[0-9]*", GROUP="i2c", MODE="0660"
'';
hardware.i2c.enable = true;
# enable rgb support
services.hardware.openrgb.enable = true;
# boot.kernelPackages = pkgs.linuxPackages;
# let's use the CachyOS kernel instead!
boot.kernelPackages = pkgs.cachyosKernels.linuxPackages-cachyos-lts;
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
boot.loader.limine.maxGenerations = lib.mkForce 100;
programs = {
steam = {
enable = true;
gamescopeSession.enable = true;
localNetworkGameTransfers.openFirewall = true;
extraCompatPackages = with pkgs; [ proton-ge-bin ];
};
};
services.xserver.videoDrivers = [
"modesetting"
"nvidia"
];
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = false;
nvidiaSettings = false;
open = false;
};
# virtualization settings
virtualisation = {
containers.enable = true;
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings.dns_enabled = true; # Required for containers under podman-compose to be able to talk to each other.
};
};
# enable hyper-v for guests
virtualisation.hypervGuest.enable = true;
boot.blacklistedKernelModules = [ "hyperv_fb" ];
# i don't even remember what this does or why i added it
systemd.tmpfiles.rules = [
"L+ /var/lib/qemu/firmware - - - - ${pkgs.qemu}/share/qemu/firmware"
"d /mnt/storage 0775 sckova users - -"
];
services.factorio = {
enable = true;
openFirewall = true;
requireUserVerification = false;
lan = true;
port = 25565;
# bind = "[::]"; # support IPv6
game-name = "kova's minecraft";
game-password = "ThisIsASuperSecurePasswordThatNobodyWillGuess";
admins = [ "sckova" ];
};
}