Commit Graph

13 Commits

Author SHA1 Message Date
Miguel Palhas a8593d9157 wl kbptr
CI / lint (push) Successful in 32s
CI / eval (push) Failing after 1m39s
2026-08-17 13:39:37 +01:00
Miguel Palhas 3d9c273fd3 wip
CI / lint (push) Successful in 33s
CI / eval (push) Failing after 1m41s
2026-07-30 13:18:47 +01:00
Miguel Palhas 938a900fbe feat(home): package Claude Desktop and T3 Code, with per-host UI scaling
Add two Electron AI desktop apps built from their official upstream
binaries and wire them into the home config (x86_64 only):

- claude-desktop: Anthropic's official Linux .deb, unpacked via dpkg +
  autoPatchelfHook. Wrapper disables the SUID sandbox (nix store can't
  set it up) and adds the NixOS GL driver path so it hardware-accelerates
  instead of falling back to software rendering.
- t3-code: pingdotgg/t3code AppImage via appimageTools.wrapType2, with
  desktop entry + hicolor icons.

Both share a new custom.aiApps.deviceScaleFactor option feeding
--force-device-scale-factor; konishi's 4K@1x monitors set it to "1.5",
arrakis stays native.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-16 14:06:55 +01:00
Miguel Palhas 3c7a65b190 retroarch
CI / lint (push) Successful in 1m21s
CI / eval (push) Failing after 2m29s
2026-07-06 16:28:40 +01:00
Miguel Palhas eea9bdb095 sunshine fixes 2026-07-06 09:54:23 +01:00
Miguel Palhas c4a5515297 gaming: move home module to gaming/ dir, add moonlight client toggle
CI / lint (push) Successful in 1m5s
CI / eval (push) Failing after 2m20s
Mirror the hosts/common/features/gaming/ layout on the home side: turn the
single gaming.nix into a gaming/ directory. Moonlight (the client
counterpart to the Sunshine host) becomes moonlight.nix, gated by its own
custom.gaming.moonlight option so a host can install just the streaming
client without the full launcher/Proton toolkit (custom.gaming.enable).

- gaming.nix -> gaming/default.nix (imports moonlight.nix)
- gaming/moonlight.nix: custom.gaming.moonlight -> moonlight-qt
- arrakis: import gaming module, set custom.gaming.moonlight = true
  (replaces the one-off home.packages line)
- konishi: update import path to the directory

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-06 09:49:04 +01:00
Miguel Palhas 75198e4429 konishi: autologin straight into hyprlock
CI / lint (push) Successful in 1m11s
CI / eval (push) Failing after 2m28s
SDDM auto-logs naps62 in and Hyprland locks immediately via hyprlock
(exec-once), so a cold boot lands on the themeable lock screen instead of
the SDDM greeter. Safe here (no FDE makes SDDM-vs-autologin marginal) and it
lets Moonlight reach the box after a cold boot, not just from suspend, since
Sunshine only runs once a session exists. konishi-only.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 15:55:22 +01:00
Miguel Palhas 923b884eff gaming: pin Steam Big Picture + games to DP-1/ws3
Big Picture shares the plain `steam` WM_CLASS, so it opened on whatever
monitor the cursor was on rather than the streamed one; match its title
instead and pin to ws3 (DP-1's persistent workspace, what the stream
captures). Move the steam_app_ game rule from ws6 to ws3 too so games and
Big Picture share one streamed workspace and launching a game doesn't flip
DP-1 to a different workspace.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 14:59:22 +01:00
Miguel Palhas e4b96ba019 konishi/hyprland: launch Steam games fullscreen on DP-1
CI / lint (push) Successful in 1m6s
CI / eval (push) Failing after 2m23s
Steam/Proton titles run under XWayland with WM_CLASS steam_app_<appid>.
Without a rule they open tiled on whatever monitor Steam is on (the
primary, bottom-left HDMI-A-1). Match steam_app_.* and send them
fullscreen to workspace 6 (DP-1, top-left). Native games use their own
class and can be added individually.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 14:16:29 +01:00
Miguel Palhas 7fff73e776 gaming: add Steam/Sunshine stack + user-space toolkit
Host (hosts/common/features/gaming/):
- move steam.nix under gaming/, add gamemode + gamescope (capSysNice)
- sunshine.nix: Sunshine stream host for Moonlight/Nvidia Shield
  (openFirewall, capSysAdmin for Wayland/KMS capture, autoStart)

Home (home/common/programs/gaming.nix):
- reusable custom.gaming module: Lutris, Heroic, ProtonPlus,
  protontricks, MangoHud, vkbasalt, vulkan-tools
- NVIDIA-specific extras isolated behind custom.gaming.nvidia

Wire konishi: host imports ../gaming; home enables custom.gaming
with nvidia = true.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-03 10:50:38 +01:00
Miguel Palhas 39e6276c7d Session overhaul: dev tooling, cleanup, theming, fixes
Tooling:
- nh + nvd/nom/statix/deadnix/comma (new programs/nix.nix); GC via nh clean
- zoxide (cd), atuin, just, lazydocker, dust, duf, difftastic (git dft)

Structure:
- rename desktop -> konishi; homeConfigurations -> "user@host" for nh autodetect

Removals (heavy/unused):
- android-studio, unity/.NET/omnisharp/vscode, kicad, zoom, calibre,
  google-fonts, nerd-dictation

Screen recording:
- kooha + vokoscreen-ng + `webcam` corner-cam command/window-rule

Fixes:
- WEBKIT_DISABLE_DMABUF_RENDERER moved to common (electron/tauri on intel)
- kitty pinned to Catppuccin-Mocha; darkman no longer toggles kitty/claude
- claude theme dark + statusline locale fix
- ssh: migrate to settings API + multiplexing/keepalive/AddKeysToAgent;
  gpg-agent enableSshSupport
- silence hyprland configType / gtk4 / xdg userDirs deprecations

Flake hygiene:
- follows=nixpkgs for foundry/hardware/rose-pine/zen/spicetify (10->5 nixpkgs)
- zoxide _ZO_DOCTOR=0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 18:17:25 +01:00
Miguel Palhas a2b4d0f479 deadnix 2026-06-27 14:17:02 +01:00
Miguel Palhas 4eeef628b0 a few more additions 2026-06-27 14:16:30 +01:00