From 3f9313fa7d4c3803e849f4c108b820f924db1ed2 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Wed, 30 Jul 2025 22:21:30 +0200 Subject: athena: Adapt to wayland config changes --- host/athena.nix | 143 ++++++++++++++++++++++------------------------- host/hardware/athena.nix | 24 ++++++-- host/hardware/atlas.nix | 1 - 3 files changed, 88 insertions(+), 80 deletions(-) diff --git a/host/athena.nix b/host/athena.nix index 88c639c..619a3bf 100644 --- a/host/athena.nix +++ b/host/athena.nix @@ -6,47 +6,43 @@ ./software/desktop ]; - boot = { - loader = { - systemd-boot.enable = true; - efi.canTouchEfiVariables = true; - }; - - initrd.luks.devices = { - encrypted = { - device = "/dev/nvme0n1p2"; - preLVM = true; - allowDiscards = true; - }; - }; - }; - networking = { hostName = "athena"; - firewall.enable = false; networkmanager.enable = true; }; users.extraUsers.common.extraGroups = [ "networkmanager" "libvirtd" ]; - networking.wireguard.interfaces = { - wg0 = { - ips = [ "10.100.0.4/24" ]; + hardware = { + nvidia = { + open = true; + package = pkgs.linuxPackages.nvidia_x11; + prime = { + offload.enable = true; - privateKeyFile = "/etc/wireguard/private"; + intelBusId = "PCI:0:2:0"; + nvidiaBusId = "PCI:1:0:0"; + }; + powerManagement.enable = true; + }; - peers = [ - { # automatix - publicKey = "B0tkjq+5SfECKx1gWEP5JVWOIaRWL2JNE7iSpMmN4F0="; - allowedIPs = [ "10.100.0.0/24" ]; - endpoint = "kummerlaender.eu:54321"; + graphics.extraPackages = [ pkgs.libva ]; - persistentKeepalive = 10; - } - ]; - }; + nvidia-container-toolkit.enable = true; }; + environment.systemPackages = [ + pkgs.zenith-nvidia + pkgs.virt-manager + (pkgs.writeScriptBin "nvidia-offload" '' + export __NV_PRIME_RENDER_OFFLOAD=1 + export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 + export __GLX_VENDOR_LIBRARY_NAME=nvidia + export __VK_LAYER_NV_optimus=NVIDIA_only + exec -a "$0" "$@" + '') + ]; + services = { upower.enable = true; acpid.enable = true; @@ -55,6 +51,24 @@ videoDrivers = [ "nvidia" ]; }; + displayManager = { + autoLogin = { + enable = true; + user = "common"; + }; + sddm = { + enable = true; + wayland.enable = true; + }; + }; + + pipewire = { + enable = true; + alsa.enable = true; + pulse.enable = true; + wireplumber.enable = true; + }; + libinput = { enable = true; touchpad = { @@ -77,61 +91,22 @@ }; }; - hardware = { - nvidia = { - open = true; - package = pkgs.linuxPackages.nvidia_x11; - prime = { - offload.enable = true; - - intelBusId = "PCI:0:2:0"; - nvidiaBusId = "PCI:1:0:0"; - }; - powerManagement.enable = true; - }; - - nvidia-container-toolkit.enable = true; + programs = { + niri.enable = true; + xwayland.enable = true; }; - environment.systemPackages = [ - pkgs.zenith-nvidia - pkgs.virt-manager - (pkgs.writeScriptBin "nvidia-offload" '' - export __NV_PRIME_RENDER_OFFLOAD=1 - export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 - export __GLX_VENDOR_LIBRARY_NAME=nvidia - export __VK_LAYER_NV_optimus=NVIDIA_only - exec -a "$0" "$@" - '') - ]; - - services.displayManager = { - autoLogin = { - enable = true; - user = "common"; - }; - sddm = { - enable = true; - wayland.enable = true; - }; - }; - programs.niri.enable = true; - programs.xwayland.enable = true; + security.polkit.enable = true; xdg.portal = { - xdgOpenUsePortal = true; enable = true; - extraPortals = [ + xdgOpenUsePortal = true; + extraPortals = with pkgs; [ pkgs.xdg-desktop-portal-gnome + pkgs.xdg-desktop-portal-gtk ]; }; - hardware.trackpoint = { - enable = true; - emulateWheel = true; - speed = 250; - }; - hardware.bluetooth.enable = true; services.tlp = { @@ -161,6 +136,24 @@ }; users.users.common.extraGroups = [ "docker" ]; + networking.wireguard.interfaces = { + wg0 = { + ips = [ "10.100.0.4/24" ]; + + privateKeyFile = "/etc/wireguard/private"; + + peers = [ + { # automatix + publicKey = "B0tkjq+5SfECKx1gWEP5JVWOIaRWL2JNE7iSpMmN4F0="; + allowedIPs = [ "10.100.0.0/24" ]; + endpoint = "kummerlaender.eu:54321"; + + persistentKeepalive = 10; + } + ]; + }; + }; + system.stateVersion = "21.11"; } diff --git a/host/hardware/athena.nix b/host/hardware/athena.nix index 508507a..53b36cf 100644 --- a/host/hardware/athena.nix +++ b/host/hardware/athena.nix @@ -8,10 +8,26 @@ [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ]; - boot.initrd.kernelModules = [ "dm-snapshot" ]; - boot.kernelModules = [ "kvm-intel" "fuse" ]; - boot.extraModulePackages = [ ]; + boot = { + initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ]; + initrd.kernelModules = [ "dm-snapshot" ]; + kernelModules = [ "kvm-intel" "fuse" ]; + extraModulePackages = [ ]; + kernelParams = [ "nvidia-drm.modeset=1" ]; + + loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; + + initrd.luks.devices = { + encrypted = { + device = "/dev/nvme0n1p2"; + preLVM = true; + allowDiscards = true; + }; + }; + }; fileSystems."/" = { device = "/dev/disk/by-uuid/3af135f5-9bfe-4ab4-abb3-2e93caad08ea"; diff --git a/host/hardware/atlas.nix b/host/hardware/atlas.nix index a2f2faf..c5a0382 100644 --- a/host/hardware/atlas.nix +++ b/host/hardware/atlas.nix @@ -8,7 +8,6 @@ extraModulePackages = [ ]; kernelParams = [ "nvidia-drm.modeset=1" ]; - loader = { systemd-boot.enable = true; efi.canTouchEfiVariables = true; -- cgit v1.2.3