Laptop Overview
The laptop configuration targets an AMD-based workstation running a tiling Wayland compositor. It prioritises development workflow, battery life, and Secure Boot.
Hardware
| Component | Detail |
|---|---|
| CPU | AMD Ryzen (with kvm-amd module) |
| GPU | AMD Radeon (integrated) |
| Storage | Crucial CT1000P3SSD8 1TB NVMe |
| Firmware | Redistributable firmware enabled, AMD microcode updates |
System Identity
nix
specialArgs = {
username = "nixos";
hostname = "laptop";
};Module Map
The laptop loads 22 modules from flake.nix. Commented-out modules are available but disabled:
| Module | Status | Purpose |
|---|---|---|
boot.nix | Active | Lanzaboote Secure Boot |
kernel.nix | Active | CachyOS kernel + sysctl |
disko.nix | Active | LUKS + ext4 disk layout |
network.nix | Active | iwd WiFi |
packages.nix | Active | All packages |
graphics.nix | Active | AMD GPU acceleration |
pipewire.nix | Active | Audio stack |
bluetooth.nix | Active | Bluetooth (power off on boot) |
tlp.nix | Active | Power management |
virtualisation.nix | Active | Podman + KVM |
font.nix | Active | Font packages |
users.nix | Active | User account + autologin |
zsh.nix | Active | Default shell |
nix.nix | Active | Nix settings + caches |
nh.nix | Active | nh helper + GC |
time.nix | Active | Timezone |
fstrim.nix | Active | Weekly SSD TRIM |
configuration.nix | Active | Swaylock PAM + dbus |
hardware-configuration.nix | Active | Generated hardware config |
adb.nix | Disabled | Android Debug Bridge |
alsa.nix | Disabled | Direct ALSA (using PipeWire instead) |
tailscale.nix | Disabled | Tailscale VPN |
Key Configuration Choices
Passwordless Sudo
The wheel group does not require a password for sudo:
nix
security.sudo.wheelNeedsPassword = false;Auto-login
The user is automatically logged in on the first boot via getty:
nix
services.getty = {
autologinOnce = true;
autologinUser = username;
};Timezone
nix
time.timeZone = "Europe/Rome";D-Bus
Uses the newer dbus-broker implementation:
nix
services.dbus.implementation = "broker";