Commit graph

316 commits

Author SHA1 Message Date
ee86678cb5 gaming: drop arctis-sound-manager, ANC via direct HID script
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-28 19:35:25 +01:00
027858ff1e gaming: arctis-sound-manager + quickshell ANC switcher
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-28 19:21:37 +01:00
efd1331823 quickshell: native volume/brightness OSD, drop swayosd + wob
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>
2026-07-28 12:35:44 +01:00
6ef527d03f Add cmatrix 2026-07-28 11:57:01 +01:00
b8113d8183 macbook: pin aquamarine 0.11.0 src under cursor patch 2026-07-26 13:19:41 +01:00
93ec50fe9d macbook: aquamarine immediate legacy cursor moves (patch file) 2026-07-25 09:10:36 +01:00
41cbc1dd6f macbook: patch aquamarine legacy-iface cursor null bug 2026-07-25 08:54:10 +01:00
2244f339c9 macbook: legacy DRM iface for immediate cursor updates 2026-07-25 08:45:11 +01:00
a731bb1732 macbook: pin i965 VA-API driver, drop unusable iHD 2026-07-24 15:52:54 +01:00
ec26df5b80 macbook: add intel VA-API drivers for hw video decode 2026-07-24 15:44:14 +01:00
2aa8e253de macbook: add faugus-launcher 2026-07-22 17:18:15 +01:00
a07759a40d macbook: drop DWT daemon, native libinput DWT works
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 21:27:56 +01:00
4f99ea2019 macbook: fix native DWT via hwdb touchpad integration override
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 21:18:56 +01:00
f1212e72c8 macbook: swap fn/left-ctrl via hid_apple
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 11:57:44 +01:00
c1387d4400 macbook: drop unused X11 TearFree option
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 17:32:17 +01:00
0ea1abd7aa desktop: smooth plymouth handoff + start-hyprland, macbook early KMS
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 17:13:51 +01:00
a283ab23de ghostty: share warm-instance daemon across desktops
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 14:01:17 +01:00
39526502c7 gaming: use pinned cachyos kernel overlay for cache hits
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-05 17:01:32 +01:00
9813812dfc Move insecure-pnpm/broadcom-sta allowance to common.nix (vesktop on all hosts)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 20:00:32 +01:00
ad1ceba28e macbook: pin to 6.12 LTS kernel so broadcom_sta + facetimehd build (7.x breaks them)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 10:42:08 +01:00
ebef93f618 macbook: allow insecure pnpm (CVE-flagged build dep in closure)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 10:26:49 +01:00
4d52da994c quickshell: upower battery, event-driven network, minute clock, stylix font, wifi glyphs
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 11:03:24 +01:00
8dd70a2d9d mediaserver: drop no-op firewall rules, close unused DR forwards
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 10:00:49 +01:00
cf224d7f4a gaming: match monitor by DP-3 connector name (desc: never applied)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 09:41:22 +01:00
a08e9b6977 gaming: match monitor by EDID desc to fix 180Hz on connector drift
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 20:40:39 +01:00
60e954295e gaming: add qbittorrent
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 23:24:28 +01:00
c5e698d7ec fix geary crash by using programs.geary module
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 13:20:14 +01:00
7146030074 fix auto-upgrade running before flake.lock update
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>
2026-06-01 09:34:39 +01:00
8560c11afa fix NIC naming: use udev rules instead of .link files
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>
2026-05-22 09:31:57 +01:00
1aebc200b6 remove matugen remnants — theming is now handled by stylix
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>
2026-05-20 17:45:11 +01:00
93a9f56092 macbook: increase DWT timeout from 0.3s to 0.4s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-19 17:44:35 +01:00
b52f730889 macbook: re-enable touchpad when DWT service stops
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>
2026-05-19 17:41:42 +01:00
951ba2b850 macbook: revert libinput quirk — it permanently inhibits the touchpad
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>
2026-05-19 17:39:38 +01:00
22c1b35360 macbook: add libinput quirk for native DWT on bcm5974
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>
2026-05-19 17:36:04 +01:00
20f70dd27a Fix dwt ignoring modifiers like shift, alt etc. 2026-05-19 17:31:53 +01:00
ced2ff65dc Add autoupdate. 2026-05-19 17:10:17 +01:00
d66558efae macbook: remove zen warmup service; drop XFCE fallback session
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>
2026-05-19 17:09:30 +01:00
80eda70088 macbook: reduce DWT timeout from 500ms to 300ms
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 17:32:51 +01:00
8285fce24a macbook: add DWT daemon for bcm5974 touchpad
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>
2026-05-18 17:30:00 +01:00
8c1f248fb9 macbook: add warmup service for Zen Browser
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>
2026-05-18 17:02:53 +01:00
ca6699f6f4 macbook: drop unnecessary RestartSec from ghostty daemon
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 16:58:00 +01:00
b32bb900c0 macbook: always restart ghostty daemon after window close
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>
2026-05-18 16:57:05 +01:00
38bd660ddb macbook: add warmup services for Ghostty and Nemo
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>
2026-05-18 16:53:12 +01:00
b713d64211 stylix: enable on media server via stylix-stable (release-25.11)
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>
2026-05-18 13:53:19 +01:00
88b9c24ffb fix deprecated package names and gtk4 theme warning
- 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>
2026-05-18 10:48:22 +01:00
4fa6dc9f88 remove VSCodium and nix-ld from config
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>
2026-05-18 10:01:07 +01:00
f5183a7605 gaming: set max-jobs = 1 to allow trivial local builds
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>
2026-05-17 22:32:34 +01:00
62a1f9a38c gaming: remove lutris (using Faugus instead)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 21:14:18 +01:00
49c4a93fa8 gaming: force all nix builds to remote media server
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>
2026-05-17 21:01:00 +01:00
2156ce4138 hyprland: migrate to Lua config (Hyprland 0.55+)
Switch Gaming and Macbook to home-manager unstable which has
configType = "lua" support. Converts the full Hyprland config from
deprecated hyprlang to native Lua:

- flake: add home-manager unstable input for Gaming/Macbook
- hyprland.nix: configType = "lua", settings.config for static sections,
  extraConfig for env/startup/animations/binds/window-rules
- hosts: monitor config updated to hl.monitor({}) table format

Eliminates the windowrulev2 deprecation banner.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 20:38:30 +01:00