91 lines
2.1 KiB
Nix
Executable File
91 lines
2.1 KiB
Nix
Executable File
{ config, pkgs, lib, home-manager, ... }:
|
|
|
|
{
|
|
imports = [
|
|
../../system/modules/sway.nix
|
|
../../system/modules/dev.nix
|
|
../../system/modules/ml_dev.nix
|
|
../../system/modules/latex.nix
|
|
../../system/modules/docker.nix
|
|
../../system/modules/bluetooth.nix
|
|
../../system/modules/desktop_tools.nix
|
|
../../system/modules/keyd.nix
|
|
../../system/modules/entertainment.nix
|
|
../../system/modules/gaming.nix
|
|
|
|
../../system/cpu/amd
|
|
#../../system/gpu/nvidia/ampere
|
|
../../system/pc/ssd
|
|
../../system/pc/audio/pipewire.nix
|
|
../../system/modules/mullvad.nix
|
|
|
|
./hardware-configuration.nix
|
|
|
|
./user.nix
|
|
];
|
|
environment.systemPackages = with pkgs; [
|
|
keymapp
|
|
];
|
|
|
|
home-manager.useUserPackages = true;
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
boot.loader.grub = {
|
|
enable = true;
|
|
version = 2;
|
|
efiSupport = true;
|
|
enableCryptodisk = true;
|
|
device = "nodev";
|
|
};
|
|
|
|
boot.initrd.luks.devices = {
|
|
crypted = {
|
|
device = "/dev/disk/by-uuid/58ae6681-79a6-418e-94e1-8ed298b19e7c";
|
|
preLVM = true;
|
|
};
|
|
};
|
|
|
|
boot.kernelParams = [ "kvm.enable_virt_at_load=0" ];
|
|
|
|
console.keyMap = "us-acentos";
|
|
|
|
hardware.graphics.enable = true;
|
|
services.xserver.videoDrivers = [ "nvidia" ];
|
|
hardware.nvidia = {
|
|
modesetting.enable = true;
|
|
powerManagement.enable = true;
|
|
powerManagement.finegrained = false;
|
|
open = false;
|
|
nvidiaSettings = true;
|
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
|
};
|
|
|
|
# hibernation setup
|
|
boot.resumeDevice = "/dev/disk/by-uuid/3876d89-a80d-4422-b852-d308fec68d4a";
|
|
|
|
# Suspend first
|
|
|
|
# Define time delay for hibernation
|
|
systemd.sleep.extraConfig = ''
|
|
HibernateDelaySec=30m
|
|
SuspendState=mem
|
|
'';
|
|
|
|
# networking and connection
|
|
networking.hostName = "alex-desktop";
|
|
|
|
hardware.bluetooth.powerOnBoot = true;
|
|
|
|
# time and localization
|
|
time.timeZone = "Europe/Berlin";
|
|
|
|
# users
|
|
programs.fish.enable = true;
|
|
users.users.alex = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "wheel" "video" "network" "audio" "networkmanager" "vboxusers" "docker" ];
|
|
shell = pkgs.fish;
|
|
};
|
|
}
|