Sixth surface in the SDF chrome shader, melting out of the bottom
frame. Volume is reactive via Pipewire so the OSD also fires for
pavucontrol/mixer changes; brightness routes through a new osd IPC
handler since sysfs backlight only notifies via POLLPRI.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Remove unnecessary --impure from update alias, shift
auto-upgrade from 04:15 to 05:15 so it runs after the
Forgejo bot updates flake.lock at 04:00 UTC (05:00 BST).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
systemd.network.links didn't generate files; use udev extraRules
to pin NIC names to MACs. Also disable networking.useDHCP catch-all
that silently misconfigured the LAN NIC when it got a wrong name.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Delete 8 unused matugen template files, remove the matugen package,
homepage custom.css watcher infrastructure, and the wallpaper shell
function. Update remaining comments to reference stylix.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add ExecStopPost to write 0 to bcm5974's inhibited sysfs node,
so the touchpad is always restored even if the script is killed
mid-inhibit.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The AttrKeyboardIntegration=internal quirk caused libinput's native
DWT to permanently disable the touchpad. Keep the custom script.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Tell libinput the Apple keyboard is internal so its built-in
disable-while-typing pairing works despite keyboard and touchpad
sharing the same USB device. Keep the custom DWT script as fallback.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The zen-beta headless warmup was causing system unresponsiveness on
the MacBook's limited hardware. XFCE fallback is unnecessary with
Hyprland's emergency mode.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Hyprland's built-in disable-while-typing doesn't work on this
MacBook because the keyboard and touchpad share the same USB
device, breaking libinput's device pairing. Add a lightweight
Python daemon that watches keyboard events and inhibits the
touchpad via sysfs for 500ms after each keypress.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Start Zen headless for 3s at login to prime the page cache and shared
libraries on the slow MacBook Air hardware.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ghostty exits cleanly when the last window closes, so on-failure
never triggers a restart. Switch to Restart=always with a 1s delay
so the headless instance respawns and stays warm.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Start Ghostty headless and pre-warm Nemo at login so both launch
faster on the aging Haswell MacBook Air.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add a stylix-stable input pinned to release-25.11 so the media server
gets Stylix theming without pulling in unstable nixpkgs. btop is now
managed by Home Manager on all hosts with Stylix auto-theming.
Desktop-only config (Zen/Vesktop CSS, GTK icons) is guarded behind
an isDesktop check in stylix.nix.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- protonvpn-gui → proton-vpn
- xfce.thunar → thunar
- set gtk.gtk4.theme = null to adopt new HM 26.05 default
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
VSCodium (with its nix-ld/LD_LIBRARY_PATH wrapper for native extension
addons) has been removed from home-manager. nix-ld is no longer needed
on Gaming or Macbook without it.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pkgs.writeText derivations (used by HM for config files) carry
preferLocalBuild = true, which the remote build hook declines, and
allowSubstitutes = false, which prevents cache hits. With max-jobs = 0
these can never be realised, causing nixos-rebuild to fail.
Setting max-jobs = 1 lets these millisecond-duration text-file writes
run locally with no gaming impact. All real compilation still goes to
the media server via the distributed build configuration.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
max-jobs = 0 sends every build to nordhammer.it instead of compiling
locally, so nixos updates never compete with games for resources.
builders-use-substitutes lets the server pull from binary caches directly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>