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>
47 lines
1.6 KiB
Nix
47 lines
1.6 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
{
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
boot.loader.limine = {
|
|
enable = true;
|
|
maxGenerations = 5;
|
|
|
|
# Gruvbox, to match the icon theme.
|
|
style = {
|
|
wallpapers = [ ]; # Solid background; a path here would be used instead
|
|
interface = {
|
|
branding = "NixOS";
|
|
brandingColor = "fabd2f";
|
|
helpColor = "928374";
|
|
helpColorBright = "d79921";
|
|
};
|
|
graphicalTerminal = {
|
|
foreground = "ebdbb2";
|
|
background = "00282828";
|
|
brightForeground = "fbf1c7";
|
|
palette = "282828;cc241d;98971a;d79921;458588;b16286;689d6a;a89984";
|
|
brightPalette = "928374;fb4934;b8bb26;fabd2f;83a598;d3869b;8ec07c;ebdbb2";
|
|
margin = 32;
|
|
};
|
|
};
|
|
};
|
|
|
|
boot.kernelPackages = pkgs.linuxPackages;
|
|
boot.supportedFilesystems = [ "fuse" ];
|
|
programs.fuse.userAllowOther = true;
|
|
|
|
# zram instead of disk swap: nothing sensitive is written to disk in
|
|
# plaintext. systemd's gpt-auto-generator would otherwise re-activate the
|
|
# swap partition hardware-configuration.nix still lists, hence the kernel
|
|
# param. / /home /nix /boot are declared explicitly there, so they don't
|
|
# depend on gpt-auto.
|
|
zramSwap.enable = true;
|
|
swapDevices = lib.mkForce [ ];
|
|
|
|
# Unlike the desktop this doesn't carry acpi_enforce_resources=lax: that
|
|
# only exists there to let lm_sensors poke the Super I/O chip behind ACPI's
|
|
# back, and on a laptop — where ACPI genuinely owns the EC that asusd talks
|
|
# to — relaxing it is how you get fan/thermal weirdness. CPU temps come
|
|
# from k10temp, everything else from asusd.
|
|
boot.kernelParams = [ "systemd.gpt_auto=0" ];
|
|
}
|