m3tm3re
a427f319d4
feat(agents): add gitIdentity config and git-identity rule
...
- coding.agents.gitIdentity enabled with m3ta-chiron identity
- coding.agents.pi.codingRules.concerns includes 'git-identity'
- Uses feature/agent-git-identity branches for m3ta-nixpkgs and agents
2026-04-27 13:24:34 +02:00
m3tm3re
09bc9da6d9
chore: complete AGENTS.md documentation
...
- Add comprehensive project documentation to AGENTS.md
- Remove stale docs from docs/ directory
- Update agent configs (agents.nix, pi.nix)
- Update python.nix language config
- Update .gitignore
2026-04-26 14:10:54 +02:00
m3tm3re
eb06533174
Merge feature/home-profile-restructuring: home-manager profile refactoring
...
Refactor home-manager configuration structure:
- Reorganize from features/ to base/coding/desktop/server/profiles/
- Add language runtime modules (go, js, python, rust, typescript)
- Add LSP server configuration
- Add gaming and media profiles
- Add shell modules (fish, nushell, starship)
- Consolidate editor and git configuration
2026-04-26 13:53:00 +02:00
m3tm3re
30a9a23de2
refactor: add language runtimes module and cleanup agent config
...
- Add home/coding/languages/ with Python, JavaScript, Rust, Go, TypeScript
- Move bun/nodejs from agents.nix to languages/javascript.nix
- Move python3 with packages to languages/python.nix
- Move npm config to javascript.nix (broader context)
- Add language options to m3-ares and m3-kratos host configs
- Move pyrefly from agents.nix to lsp/servers.nix
- Remove duplicate python3 reference (build conflict fix)
- Remove unused base/secrets/cli-tools/ duplicates
2026-04-26 13:20:22 +02:00
m3tm3re
d19b87f8cd
feat: add coding packages module (bruno, insomnia)
2026-04-26 12:29:14 +02:00
m3tm3re
cc01c1d0aa
fix(agents): make videoDrivers optional with safe default
...
For standalone Home Manager evaluation where videoDrivers may be absent
2026-04-26 11:37:17 +02:00
m3tm3re
797ffb2b8a
fix: assert unknown profiles in mkHomeConfig; move agent modules to coding/agents
...
- home/lib/default.nix: add assertion for unknown profile names instead of
silently filtering them out; remove unused 'inherit (lib) optional'
- home/coding/agents/{opencode,pi}.nix: moved from home/features/coding/
to co-locate with agents.nix (eliminating cross-directory back-references)
- home/coding/agents/agents.nix: update imports to ./opencode.nix and ./pi.nix
- home/features/coding/: remove now-dead default.nix (nothing imported it)
2026-04-26 11:17:03 +02:00
m3tm3re
f3749c5679
feat: implement profile system with mkHomeConfig and context constraints
...
- Add home/lib/default.nix with mkHomeConfig utility
- Loads base + common modules always
- Maps profiles (coding, gaming, media) to module imports
- Enforces desktop/server mutual exclusion via assertion
- Context must be 'desktop', 'server', or null
- Migrate all per-host home configs to new profile system
- m3-ares: context=desktop, profiles=[coding, gaming, media]
- m3-kratos: context=desktop, profiles=[coding, gaming, media]
- m3-atlas: context=server, profiles=[coding]
- m3-helios: context=server, profiles=[]
- m3-hermes: context=server, profiles=[]
- m3-aether: context=server, profiles=[]
- m3-daedalus: context=desktop, profiles=[coding, media]
- Replace features.* options with new namespaces:
- features.cli.* -> base.shell.* / base.cliTools.* / base.secrets
- features.desktop.* -> desktop.wm.* / desktop.apps.* / desktop.theme.*
- gaming/media moved to profiles.gaming.* / profiles.media.*
- Fix home/coding/editor/neovim.nix: remove duplicate option declaration
(coding.editors.neovim.enable already declared by m3ta-nixpkgs)
- Fix home/coding/lsp/servers.nix: replace removed nodePackages.typescript-language-server
with typescript-language-server
- Fix home/desktop/theme/wallpapers.nix: correct relative path
(was ../../.. which resolved to project root, should be ../..)
2026-04-26 11:03:43 +02:00
m3tm3re
9908b9e335
fix: code review fixes
...
- Fix hardcoded user path in webapps.nix (use homeDirectory)
- Normalize wallpapers option to use .enable suffix
- Remove duplicate FZF keybind declaration
- Update comments to match actual implementation
2026-04-26 10:49:01 +02:00
m3tm3re
1b5bcae686
feat: create new home/ directory structure for profile-based config
...
New structure:
- home/base/ - Always loaded (shell, cli-tools, secrets)
- home/coding/ - Profile-independent dev tooling (editor, lsp, git, agents)
- home/profiles/ - Freely combinable profiles (gaming, media)
- home/desktop/ - Desktop-only (wm, apps, theme)
- home/server/ - Minimal server stub
Migration sources:
- home/features/cli/ → home/base/{shell,cli-tools,secrets}
- home/features/desktop/hyprland,wayland,rofi → home/desktop/wm/
- home/features/desktop/obsidian,office,webapps,crypto → home/desktop/apps/
- home/features/desktop/fonts,theme,wallpapers → home/desktop/theme/
- gaming.nix split → home/profiles/gaming/{steam,gamescope}
- media.nix split → home/profiles/media/{obs,ffmpeg,yt-dlp,kdenlive,handbrake}
Option namespaces updated:
- features.cli.* → base.shell.* / base.cliTools.* / base.secrets
- features.desktop.* → desktop.wm.* / desktop.apps.* / desktop.theme.*
- features.desktop.gaming → profiles.gaming.*
- features.desktop.media → profiles.media.*
Verified: nix flake check passes (warnings only)
2026-04-26 10:37:03 +02:00