Merge branch 'homelab'

This commit is contained in:
muon 2024-11-29 16:31:15 +00:00
commit 8bbe4f9a6c
26 changed files with 767 additions and 237 deletions

View file

@ -0,0 +1,121 @@
{ config, lib, pkgs, inputs, system, ... }:
let cfg = config.mods;
in {
# Hardware
imports = [ ./hardware-configuration.nix ];
environment.systemPackages = with inputs.nix-alien.packages.${system};
[ nix-alien ];
# System
mods.user.name = "muon";
networking.hostName = "muho";
networking.hostId = "56e55e83";
mods.home.file = ./home.nix;
# Modules
mods.desktop.enable = true;
mods.desktop.gaming.enable = true;
mods.boot.enable = true;
mods.theme.enable = true;
mods.theme.scheme = "woodland";
mods.server.media.enable = true;
mods.server.search.enable = true;
mods.tailscale.enable = true;
mods.wireguard.id = 3;
services.xserver.windowManager.i3.enable = true;
# Proprietary </3
mods.unfree.steam.enable = true;
mods.unfree.nvidia.enable = false;
mods.unfree.minecraft.enable = true;
# Hardware preferences
## Mouse
services.libinput.mouse.accelProfile = "flat";
## Monitors
mods.monitors = {
primary = {
name = "DVI-I-1";
config = {
enable = true;
mode = "1920x1080";
position = "0x0";
primary = true;
rate = "59.93";
};
};
secondary = {
name = "HDMI-1";
config = {
enable = true;
mode = "1280x768";
position = "1920x312";
rate = "59.99";
};
};
};
environment.extraInit = ''
xset s off -dpms
'';
## GPU (AMD Radeon 7950)
## https://wiki.nixos.org/wiki/AMD_GPU
boot.kernelParams = [ "radeon.si_support=0" "amdgpu.si_support=1" ];
hardware.graphics = {
enable = true;
enable32Bit = true;
};
## GPU (NVidia GTX 1060)
## https://nixos.wiki/wiki/Nvidia
# Enable OpenGL
# hardware.graphics = { enable = true; };
# # Load nvidia driver for Xorg and Wayland
# services.xserver.videoDrivers = [ "nvidia" ];
# hardware.nvidia = {
# # Modesetting is required.
# modesetting.enable = true;
# # Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# # Enable this if you have graphical corruption issues or application crashes after waking
# # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# # of just the bare essentials.
# powerManagement.enable = false;
# # Fine-grained power management. Turns off GPU when not in use.
# # Experimental and only works on modern Nvidia GPUs (Turing or newer).
# powerManagement.finegrained = false;
# # Use the NVidia open source kernel module (not to be confused with the
# # independent third-party "nouveau" open source driver).
# # Support is limited to the Turing and later architectures. Full list of
# # supported GPUs is at:
# # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# # Only available from driver 515.43.04+
# # Currently alpha-quality/buggy, so false is currently the recommended setting.
# open = false;
# # Enable the Nvidia settings menu,
# # accessible via `nvidia-settings`.
# nvidiaSettings = true;
# # Optionally, you may need to select the appropriate driver version for your specific GPU.
# package = config.boot.kernelPackages.nvidiaPackages.stable;
# };
# Version of first install
system.stateVersion = "23.05";
}