Commit graph

105 commits

Author SHA1 Message Date
5902011dc6
feat: add mcp-npx wrapper for Node.js MCP servers
Provides npx with Node.js in PATH for MCP server execution.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:26:28 +01:00
3fe859e21f
feat(hyprland): add immediate render rule to prevent frame flash
Applies immediate rendering to all windows to eliminate the garbage
frame flash that appears before first render.

Also documents JetBrains phantom window suppression limitation (RE2
doesn't support lookaheads, so can't exclude toolbox).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:26:20 +01:00
d6f943ba7f
feat(hyprland): pin workspaces to monitors and reduce blur noise
- Pins workspaces 1-5 to HDMI-A-1 (main ultrawide)
- Pins workspaces 6-8 to DP-3 (vertical display)
- Reduces blur noise from 0.3 to 0.05 for cleaner appearance

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:26:05 +01:00
85debcbcd4
feat: enable MCP servers and add happy-coder
- Enables official MCP servers (fetch, playwright, stackexchange, arxiv)
- Adds Charlie MCP servers (memory, comunica)
- Adds claudezilla MCP server
- Adds happy-coder mobile client from nixpkgs master
- Adds nodejs_22 for MCP server runtime

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:53 +01:00
f49a9c8019
refactor: use active-window utility in scripts
Migrates quick-zeal and spawn-term from compositor-specific APIs
(hyprctl, kdotool, niri msg) to the unified active-window utility.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:46 +01:00
9e49bd830d
feat: add compositor-agnostic window info utilities
- active-window: Get focused window info (class, pid) for Niri/Hyprland
- active-path: Get CWD of focused terminal window

These utilities abstract compositor-specific APIs for use in scripts.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:45 +01:00
8feb3957a2
fix: expose harbor package namespace to overlays
Adds harbor (self.packages) to overlay arguments, allowing custom
packages to reference each other via pkgs.harbor.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:36 +01:00
447da21da4
docs: add package search guidelines to CLAUDE.md
Documents the nixpkgs search workflow before writing custom packages.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:33 +01:00
a627589a48
chore: update flake inputs
Updates nixpkgs master channel.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:25:30 +01:00
57c86c5083
feat(hyprland): add workspace 6-8 keybinds
Adds missing workspace keybinds to match monitor setup:
- Focus workspaces 6-8
- Move windows to workspaces 6-8 silently

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:20:12 +01:00
ceb5ee4356
feat: add cliphist clipboard history manager with Mod+v keybind
Enables clipboard history for both Niri and Hyprland compositors:
- Added wl-clipboard and cliphist packages to Niri
- Configured clipboard watchers for text and images in Niri autostart
- Bound Mod+v to open clipboard history via fuzzel in both compositors

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-28 01:19:27 +01:00
ae2ee1fb77
feat: migrate from S3 binary cache to Attic
Replace the S3-based Nix binary cache with Attic, a multi-tenant
binary cache server with better deduplication and garbage collection.

Changes:
- Install attic-client system-wide from nixpkgs
- Update substituter URL from s3.toph.so to cache.toph.so/toph
- Replace S3 cache keys with Attic cache signing key
- Add attic client config for endurance host

The Attic cache provides the same functionality as the S3 cache but
with improved performance and multi-tenancy support.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-27 11:14:43 +01:00
7af406f315
feat: add Hyprland as an additional compositor alongside Niri
Enables programs.hyprland at the system level, adds xdg-desktop-portal-hyprland
with per-compositor portal routing, and wires up a home-manager config for
endurance mirroring the Niri layout (same keybinds, monitors, window rules).
Niri remains the default SDDM session.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 10:53:30 +01:00
c694915cd5
feat: add cache.toph.so Nix binary cache key and substituter 2026-02-18 13:50:47 +01:00
beefd362d4
chore: lock rigging input
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 09:34:42 +01:00
dac9526135
feat: add bosun module declaring dotfiles hosts
Declares endurance (x86_64-linux), aepplet (x86_64-linux), and
vasa (x86_64-darwin) for rigging integration. No Nomad jobs —
these are desktop/laptop machines only.

Ref: toph/rigging#1

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 09:33:47 +01:00
13c5fe53e7
feat: add rigging as flake input
Wire up toph/rigging for multi-repo infrastructure management.
Follows nixpkgs and flake-parts to avoid duplicate inputs.

Ref: toph/rigging#1

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 09:29:42 +01:00
d6d1f921e2
Add trash-cli with trash alias
Install trash-cli and alias trash to trash-put for safe file deletion.
Also clean up package comments and remove spacedrive-v2.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:51:15 +01:00
7156981e57
Add fish shell functions and abbreviations
Add nomad-ui function, --np contextual expansion, and related abbreviations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:51:01 +01:00
2073876eaf
Add Blue Yeti USB reset service for cold-boot fix
The Blue Yeti mic initializes audio endpoints in a broken state on cold boot
because snd-usb-audio loads after device enumeration. This systemd service
toggles USB authorization to force a clean rebind.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:50:47 +01:00
09a71afe84
Update flake inputs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:50:37 +01:00
890767d224
Add CLAUDE.md with project documentation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:50:30 +01:00
dfb6a8e3b6
Rename writeNushellApplication to exclude from import-tree
Prefixing with underscore prevents auto-import while keeping the file available for explicit use.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:50:26 +01:00
41a6aad6f3 Update dev.nix configuration 2026-02-16 10:28:16 +01:00
2697efb170 Add agent-deck package 2026-02-16 10:28:14 +01:00
6ba945b00f Add shell configuration for endurance 2026-02-16 10:27:43 +01:00
8e7c1fbf16 Exclude writeNushellApplication from import-tree auto-import 2026-02-16 10:25:56 +01:00
9456a8906e Remove modules/flake/default.nix (replaced by import-tree) 2026-02-16 10:25:00 +01:00
0b7ebe7cb5 Add import-tree input 2026-02-16 10:23:11 +01:00
23750cdbb4
Add nixmate
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:18:09 +01:00
e07cb4ae8b
Remove xdg-desktop-portal packages
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:11:54 +01:00
874c439c6f
Add jugglinglab
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:11:32 +01:00
93fafdbfb9
Add wakatime module
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:11:30 +01:00
420d2f687b
Add damon
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:11:14 +01:00
b8f86f26e4
Add portfolio, pytr, and tabiew
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:10:50 +01:00
5d68a3edb9
Add pytr overlay
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:10:31 +01:00
bb333784f6
Update unstable nixpkgs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 23:10:10 +01:00
dc1712cf46
Some cleanup 2026-02-10 00:38:50 +01:00
e33187bf0c
Some installs 2026-02-06 00:37:19 +01:00
a319e55cf2
Replace wallpapers and styling 2026-02-06 00:36:27 +01:00
2c61d217a1
Remove unused module 2026-02-06 00:35:56 +01:00
Christopher Mühl
bd0a03e7b8 Re-enable darwin builds
home-manager only for now
2026-01-30 12:10:31 +01:00
08f1aefbd1
Remove unused packages 2026-01-26 14:52:37 +01:00
4f7e125ed3
More unified styling 2026-01-26 09:07:48 +01:00
8cb043ccde
Add spacedrive v2 2026-01-13 10:32:17 +01:00
ccf1408352
Move everything to correct places 2026-01-13 10:32:10 +01:00
9046677414
ssh by default 2026-01-06 03:40:45 +01:00
a7494307a1
Remove unused 2026-01-06 03:17:00 +01:00
0d17a0baf1
Move quirks to profiles 2026-01-06 03:15:52 +01:00
3026b6dbec
Fix niri 2026-01-06 03:08:47 +01:00