This commit is contained in:
2026-01-02 20:43:09 +01:00
commit 96a1f8a395
124 changed files with 2833 additions and 0 deletions

46
modules/boot.nix Normal file
View File

@@ -0,0 +1,46 @@
{ pkgs, ... }:
{
boot = {
# --- Bootloader Einstellungen ---
loader = {
systemd-boot = {
enable = true;
configurationLimit = 5;
};
efi.canTouchEfiVariables = true;
timeout = 5;
};
# --- Kernel & Dateisysteme ---
kernelPackages = pkgs.linuxPackages_latest;
supportedFilesystems = [ "exfat" ];
#initrd.kernelModules = [ "nvidia" "nvidia_drm" ];
kernelParams = [
"nvidia-drm.modeset=1"
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"udev.log_priority=3"
];
# --- Initrd & Plymouth ---
initrd.compressor = "zstd";
initrd.verbose = false;
consoleLogLevel = 0;
plymouth = {
enable = true;
theme = "mac-style";
themePackages = [ pkgs.mac-style-plymouth ];
};
# --- Hardware-Modprobe ---
extraModprobeConfig = ''options bluetooth disable_ertm=1'';
};
}

32
modules/desktop.nix Normal file
View File

@@ -0,0 +1,32 @@
{ pkgs, ... }:
{
services.desktopManager.plasma6.enable = true;
programs.hyprland.enable = true;
security.polkit.enable = true;
services.displayManager.sddm = {
enable = true;
wayland.enable = true;
theme = "breeze";
settings = {
Theme = {
CursorTheme = "WhiteSur-cursors";
CursorSize = 30;
};
};
};
security.pam.services.hyprland.enableKwallet = true;
security.pam.services.sddm.enableKwallet = true;
services.pipewire = {
enable = true;
alsa.enable = true;
pulse.enable = true;
};
security.rtkit.enable = true;
services.printing.enable = true;
programs.kdeconnect.enable = true;
}

28
modules/hibernation.nix Normal file
View File

@@ -0,0 +1,28 @@
# https://md.timvandenboom.eth64.de/s/Nils/p/hibernate-TDmskjM02R
{ config, pkgs, ... }:
{
swapDevices = [ {
device = "/var/lib/swapfile";
size = 34 * 1024;
} ];
boot.resumeDevice = "/dev/disk/by-uuid/6a9e58be-37d9-4fee-8b67-81a78d80c016";
boot.kernelParams = [
"resume=UUID=6a9e58be-37d9-4fee-8b67-81a78d80c016"
"resume_offset=167837696"
];
powerManagement.enable = true;
services.logind.settings.Login = {
HandleLidSwitch = "suspend-then-hibernate";
HandlePowerKey = "poweroff";
};
systemd.sleep.extraConfig = ''
[Sleep]
HibernateDelaySec=1800
'';
}

11
modules/locale.nix Normal file
View File

@@ -0,0 +1,11 @@
{ ... }: {
networking.hostName = "nixos";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "de_DE.UTF-8";
console.keyMap = "de";
services.xserver.xkb = {
layout = "de";
options = "caps:escape";
};
}

15
modules/nvidia.nix Normal file
View File

@@ -0,0 +1,15 @@
{ config, ... }: {
services.xserver.videoDrivers = [ "nvidia" ];
hardware.graphics = {
enable = true;
enable32Bit = true;
};
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = true;
powerManagement.finegrained = false;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.beta;
};
}

View File

@@ -0,0 +1,33 @@
{ pkgs, inputs, ... }:
{
nixpkgs.overlays = [
inputs.mac-style-plymouth.overlays.default
];
nixpkgs.config.allowUnfree = true;
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
};
fonts.packages = with pkgs; [
dejavu_fonts ibm-plex inter noto-fonts roboto fira fira-code
nerd-fonts.jetbrains-mono nerd-fonts.hack
newcomputermodern
];
environment.systemPackages = with pkgs; [
git vim wget curl helix
swaybg whitesur-cursors copyq
kdePackages.kwallet-pam
brightnessctl
libxkbcommon
pavucontrol
kdePackages.partitionmanager
kdePackages.polkit-kde-agent-1
];
}

19
modules/users.nix Normal file
View File

@@ -0,0 +1,19 @@
{ pkgs, inputs, username, ... }: {
users.users.${username} = {
isNormalUser = true;
shell = pkgs.fish;
extraGroups = [ "networkmanager" "wheel" "libvirtd" "video" ];
};
programs.fish.enable = true;
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
backupFileExtension = "backup";
extraSpecialArgs = { inherit inputs username; };
users.${username} = import ../home/home.nix;
};
}

View File

@@ -0,0 +1,28 @@
# https://md.timvandenboom.eth64.de/s/Nils/p/evdev-passthrough-BTUeHFqMQ3
{ pkgs, ... }:
{
# --- Virtualisierung (QEMU/KVM & Libvirtd) ---
virtualisation.libvirtd = {
enable = true;
qemu = {
package = pkgs.qemu_kvm;
runAsRoot = true;
swtpm.enable = true;
verbatimConfig = ''
cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc","/dev/hpet", "/dev/vfio/vfio",
"/dev/input/by-id/usb-Kinesis_Corporation_Adv360_Pro_5E36F7BBCC9DC86A-if02-event-kbd",
"/dev/input/by-id/usb-Keychron_Keychron_4K_Link-event-mouse"
]
'';
};
};
# Grafische Oberfläche für die Verwaltung
programs.virt-manager.enable = true;
}