mirror of
https://github.com/Nexoniarz/nexoniarz-config-nixos-laptop.git
synced 2026-11-03 04:24:27 +00:00
The laptop was still on the Hyprland-era Pantheon commit while the desktop moved to KDE Plasma 6 + Limine and split system.nix into focused modules. This brings over everything that isn't hardware, unchanged, so both machines stay diffable: - Plasma 6 on Wayland with SDDM, Konsole, gruvbox icons, KDE MIME defaults (replaces Pantheon/LightDM; libreoffice-qt6 replaces the GTK build) - Limine bootloader with the gruvbox theme, replacing systemd-boot - system.nix split into boot/networking/locale/nix-settings/security - flakes + nix-command, sysctl hardening extras (yama, tcp_timestamps), geoclue off, captive-portal probe off - package parity: obs-studio, lmms, go, qemu, KDE utilities, lean SDR++ and rtl_433 overrides with hardware.rtl-sdr Hardware and power are adapted rather than copied: - hardware.nix keeps the AMD 680M + RTX 4050 PRIME offload setup, asusd and supergfxd, v4l2loopback webcam and the DualSense ERTM fix; OpenRGB and the desktop's single-GPU block are dropped, keyboard lighting is asusctl - power.nix is new: power-profiles-daemon for Plasma's profile switcher, lid-close handling via the current logind.settings.Login spelling, powertop/acpi, notes on asusctl charge limits - no acpi_enforce_resources=lax, ACPI owns the EC asusd drives here - touchpad defaults, and firewall openings so the hotspot script's shared connection can hand out DHCP/DNS - pinentry-qt instead of the desktop's leftover pinentry-rofi, blueman dropped in favour of Plasma's bluedevil hardware-configuration.nix stays tracked here (unlike the desktop, which gitignores it) since it's the only record of this machine's disk layout. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
3 KiB
3 KiB
nexoniarz-config-nixos-laptop
My personal NixOS system configuration tailored for daily use on an ASUS TUF Gaming A15 (FA507NU). Same layout and same choices as nexoniarz-config-nixos (the desktop), with the hardware and power modules swapped for this machine.
Overview
- OS: NixOS 26.05 (unstable channel)
- Desktop: KDE Plasma 6 on Wayland (KWin), SDDM
- Bootloader: Limine
- Terminal: Konsole
- Shell: Zsh
- Audio: PipeWire
- CPU: AMD Ryzen 5 7535HS
- GPU: AMD Radeon 680M (iGPU, drives the internal panel) + NVIDIA RTX
4050 Max-Q (dGPU, PRIME render offload only — run anything through it with
nvidia-offload <command>) - Laptop control:
asusctl(fan curves, keyboard backlight, battery charge limit) +supergfxctl(dGPU power-state switching)
Layout
| File | Contents |
|---|---|
configuration.nix |
Imports only |
hardware-configuration.nix |
Generated by nixos-generate-config, don't hand-edit |
modules/boot.nix |
Limine, kernel, zram/swap |
modules/networking.nix |
NetworkManager, firewall, DNS-over-TLS, MAC randomization |
modules/locale.nix |
Timezone, locale, console keymap |
modules/nix-settings.nix |
Nix features, GC, unfree |
modules/security.nix |
sysctl hardening, sudo, firejail, GnuPG, polkit |
modules/hardware.nix |
Hybrid graphics (PRIME offload), ASUS daemons, Bluetooth, I2C, RTL-SDR, webcam loopback, tablet, printing |
modules/power.nix |
Power profiles, lid/suspend behaviour, battery notes |
modules/audio.nix |
PipeWire |
modules/desktop.nix |
Plasma, SDDM, touchpad, fonts, theming |
modules/users.nix |
Account, shell, Steam, Flatpak |
modules/apps.nix |
Installed packages, nix-ld |
modules/default-apps.nix |
MIME associations |
modules/scripts.nix |
Custom scripts in modules/scripts/ |
Small custom CLI helpers live in modules/scripts/: encrypted vault toggle,
metadata stripping, brightness control (kernel backlight or DDC/CI), Wi-Fi
hotspot, system telemetry, weather fetch.
Differences from the desktop config
Everything outside hardware is kept identical on purpose. What differs:
modules/hardware.nix— AMD iGPU + NVIDIA dGPU on PRIME offload withasusd/supergfxd, instead of the desktop's single NVIDIA card and OpenRGB motherboard lighting. Keyboard lighting isasusctl aurahere.modules/power.nix— laptop-only module: power-profiles-daemon (Plasma's power profile switcher), lid-close behaviour,powertop/acpi.modules/desktop.nix— adds touchpad defaults and the Wayland/Ozone flag.modules/boot.nix— noacpi_enforce_resources=lax; ACPI owns the EC thatasusdtalks to on this machine.modules/networking.nix— firewall openings for the hotspot script'sipv4.method shareddnsmasq.modules/security.nix—pinentry-qt(Plasma) rather than the desktop's leftoverpinentry-rofi.
Made by Nexoniarz