Commit graph

161 commits

Author SHA1 Message Date
f4b45c8bda hyprland: fix Lua config errors caused by stylix's Hyprland target
Stylix's Hyprland target injects settings.{general,decoration,group,misc}
as top-level keys.  In hyprlang mode these render as section blocks, but
in Lua mode (configType = "lua") they become hl.general(), hl.decoration(),
etc. — functions that don't exist, causing an emergency-mode config error.

Disable stylix.targets.hyprland and absorb all its colours into
settings.config.{general,decoration,group,misc} where they are correctly
rendered inside the single hl.config({}) call.

Also add a home.activation script that removes any stale hyprland.conf
(auto-generated by Hyprland before hyprland.lua was first placed) so the
autogenerated-config warning banner can never persist across restarts.
Keep services.hyprpaper.enable = true since it was previously set by the
now-disabled Hyprland target.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 22:24:12 +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
07ee7b86df hyprland: revert to windowrulev2 for Battle.net tray rule
extraConfig is parsed as hyprlang by the HM module, not Lua — Lua syntax
caused parse errors. windowrulev2 in settings is the correct approach.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 19:55:18 +01:00
b165b55e82 hyprland: use Lua window rule for Battle.net tray window
Replace deprecated windowrulev2 hyprlang syntax with the Hyprland 0.55+
Lua hl.window_rule() API via extraConfig.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 19:51:45 +01:00
e59575780c hyprland: hide Battle.net tray icon window
The Battle.net agent leaks a tiny floating XWayland window (steam_app_0,
empty title, 160x20) that isn't captured by the Wayland tray. Send it
to the special workspace silently.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 19:48:50 +01:00
43c251b90d macbook: add wob OSD for keyboard backlight keys
wob (Wayland OSD Bar) runs as a systemd user service listening on a FIFO.
Keyboard brightness keybindings now pipe the new brightness percentage to
the FIFO after each adjustment, showing a progress bar overlay.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 13:48:07 +01:00
b97920df45 macbook: fix keyboard backlight keybinds to use brightnessctl
swayosd-client does not support --keyboard-brightness; use brightnessctl
directly to control smc::kbd_backlight.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 13:16:12 +01:00
cdb4cbd6c0 macbook: add keyboard backlight key bindings and permissions
- Add XF86KbdBrightnessUp/Down keybindings (Macbook-only) using swayosd
  for consistent OSD behaviour with screen brightness and volume
- Enable hardware.acpilight for udev rules allowing video group to write
  to /sys/class/leds/ (keyboard backlight)
- Add fred to the video group so brightnessctl/swayosd can write backlight values

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 12:58:06 +01:00
f59b00a23d desktop: rename gnome.nix → desktop.nix; switch to nemo
- Rename settings/gnome.nix to settings/desktop.nix (file no longer
  has anything to do with GNOME)
- Replace nautilus with nemo — starts fast, has a hamburger menu,
  no Tracker3/Mutter D-Bus dependencies
- Exclude thunar (pulled in by XFCE) via environment.xfce.excludePackages
- Remove nautilus Tracker dconf workaround (no longer needed)
- Update $mod+E keybind and common.nix import accordingly

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 17:50:01 +01:00
33b2c3815c hyprland: add swayosd for volume/brightness OSD
Replaces bare pamixer/brightnessctl key bindings with swayosd-client
so volume and brightness changes show an on-screen indicator bar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 17:37:02 +01:00
b6eb5c055d services: add code-server web IDE at code.nordhammer.it
Deploys code-server on FredOS-Mediaserver (port 4444, user fred) with
Authelia one_factor auth and nginx reverse proxy. Includes claude-code
in system packages for use in the integrated terminal.

Also fixes anyrun launcher width to absolute 350px (was a tiny fraction).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 10:59:35 +01:00
5f01f22088 2026-05-15 12:17:12 +01:00
9ccc3dadf3 2026-05-15 12:12:04 +01:00
6003331e24 2026-05-14 22:12:58 +01:00
92c4233b46 2026-05-14 14:58:13 +01:00
dda00ad09f 2026-05-14 13:10:32 +01:00
97bf8cd95a Adding support for macbook hyprland 2026-05-14 10:44:32 +01:00
a6b0bb55bb 2026-05-14 10:23:03 +01:00
fa9c7b9561 2026-05-14 10:21:23 +01:00
678eeccac5 2026-05-14 10:15:56 +01:00
2c0c649e49 2026-05-14 10:07:45 +01:00
cf12b46b6e 2026-05-14 10:05:44 +01:00
857b145df6 2026-05-14 10:04:34 +01:00
c81c9b8a94 2026-05-14 09:56:48 +01:00
d048642309 2026-05-14 09:54:20 +01:00
0626cab971 2026-05-14 09:52:06 +01:00
fd5268ed8a 2026-05-14 09:51:07 +01:00
c5410d958b 2026-05-14 09:48:25 +01:00
68a0175a59 2026-05-14 09:46:44 +01:00
16bd4bf4b7 Hyprland fixxxxxx 2026-05-14 09:36:17 +01:00
9d289ae6c7 2026-05-13 23:18:32 +01:00
622728dcaf Cleanup. 2026-05-13 23:10:36 +01:00
180c1fe3ba 2026-05-13 23:03:57 +01:00
db7bc35943 Fix hyprland_v3 2026-05-13 23:00:43 +01:00
a0990bceee Maybe fix hyprland v2_final_finalforreal_actuallyfinal 2026-05-13 22:53:05 +01:00
a201f98c7c Maybe fix hyprland v2_final_finalforreal 2026-05-13 22:50:29 +01:00
f39e78d519 Maybe fix hyprland v2_final 2026-05-13 22:45:52 +01:00
db5abd78f8 Maybe fix hyprland v2 2026-05-13 22:43:20 +01:00
38ef4c59f1 Maybe fix hyprland. 2026-05-13 22:40:54 +01:00
e94f417cff 2026-05-13 21:13:31 +01:00
186b6b2433 2026-05-13 20:48:53 +01:00
6938f4113a 2026-05-13 20:40:38 +01:00
5a34446de8 2026-05-13 20:00:24 +01:00
2c6322df00 2026-05-13 15:00:10 +01:00
5db1093e8a 2026-05-13 14:39:27 +01:00
983c981c24 2026-05-13 14:36:56 +01:00
ded3167b6a 2026-05-13 14:35:15 +01:00
5b3840bca9 2026-05-13 14:30:41 +01:00
0295e86f66 2026-05-13 14:26:44 +01:00
d5a45caf44 2026-05-13 14:25:52 +01:00