Commit Graph
100 Commits
Author SHA1 Message Date
m3tam3re 42acdbc98f flake update 2026-05-18 20:17:24 +02:00
m3tam3re af08084692 chore: fix git identity for m3-hermes 2026-05-11 19:27:11 +02:00
m3tam3re 4f9944101f chore: optimize hermes 2026-05-11 19:01:17 +02:00
m3tam3re e6f184f24a chore: hermes dashboard over netbird 2026-05-11 11:36:49 +02:00
m3tam3re 1544764f37 chore: m3-atlas -coding 2026-05-09 10:46:47 +02:00
m3tam3re 6128d0ae61 chore: udate m3-atlas 2026-05-09 10:17:14 +02:00
m3tam3re 22f15abd34 chore: flake update 2026-05-09 09:58:33 +02:00
m3tm3re 3e8c95944c chore: hermes update 2026-05-01 12:06:23 +02:00
m3tm3re f76c4dd5d4 chore: smlink pip to uv pip 2026-04-27 19:36:52 +02:00
m3tm3re 05dc6bf608 chore: smlink pip to uv pip 2026-04-27 19:07:26 +02:00
m3tm3re 09e2ba8538 chore: AGENTS + nixpkgs input urls 2026-04-27 17:53:08 +02:00
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 936eb13794 feat: add global skills to hermes environment 2026-04-26 15:14:54 +02:00
m3tm3re 5b0e6cbd5d feat(hermes-agent): add copy-hermes-skills systemd service 2026-04-26 14:37:43 +02:00
m3tm3re 2302810d11 chore: update beads issue state and gitignore docs/plans 2026-04-26 14:35:38 +02:00
m3tm3re 25ac47a422 feat(hermes-agent): add mkOpencodeSkills integration for skills provisioning
- Add inputs parameter to module signature for flake input access
- Define hermesSkills via inputs.agents.lib.mkOpencodeSkills
- Includes customSkills from agents flake and external skills:
  - skills-basecamp (basecamp/basecamp-cli)
  - skills-anthropic (anthropics/skills)
  - skills-kestra (kestra-io/agent-skills)
- Verified with nixos-rebuild dry-run --flake .#m3-hermes (no errors)
2026-04-26 14:35:06 +02:00
m3tm3re e6cfcc346b docs(agents): expand Beads workflow documentation
- Add 6-step core workflow with examples
- Document slash commands for agent integration
- Add 'Why Beads?' section emphasizing persistence
- Note to avoid bd edit in agent contexts
- Include dependency linking examples
2026-04-26 14:12:30 +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 0d81b0e5e9 chore: add beads issue tracker configuration 2026-04-26 13:49:23 +02:00
m3tm3re 0ea8b8d2eb feat(home): extract CLI tools into modular home/base structure
- Add individual modules for: bat, carapace, direnv, eza, fzf, lf, nitch,
  television, zellij, zellij-ps, zoxide
- Centralize in home/base/cli-tools/ with default.nix aggregator
- Simplify home/base/packages by removing extracted tools
2026-04-26 13:49:17 +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 6d0149ee6e feat: add AMD GPU tools, media packages, and productivity module
Task 3 - Gaming profile:
- Add gpu.nix with ROCm runtime/smi/info and vulkan-tools
- Import gpu.nix in gaming profile aggregator

Task 4 - Media profile:
- Add unimatrix to yt-dlp.nix packages
- (plexamp, webcord, mpv config were already present)

Task 5 - Desktop apps:
- Add productivity.nix with pomodoro-timer
- Import productivity.nix in desktop apps aggregator
2026-04-26 12:32:47 +02:00
m3tm3re d19b87f8cd feat: add coding packages module (bruno, insomnia) 2026-04-26 12:29:14 +02:00
m3tm3re 8f5d076d7b fix: make base modules enabled by default; document lazylib→lazygit
- All base/* modules now use (mkEnableOption "...") // { default = true; }
  so they activate automatically when imported — no explicit .enable = true
  required in host configs
- packages.nix: add comment documenting that lazylib does not exist in
  nixpkgs; lazygit is the correct and intended package
- zellij-ps.nix: clarify that cli.zellij-ps namespace is intentional —
  it is the home-manager module convention from m3ta-nixpkgs
- nix flake check passes (warnings are pre-existing)
2026-04-26 12:16:44 +02:00
m3tm3re 3c9a107608 feat: add missing packages and programs to base cli-tools
- packages.nix: essential packages (jq, ripgrep, fd, htop, coreutils,
  lazygit, httpie, just, devenv, gcc, go, sqlite, sqlite-vec, nix-index,
  nix-update, progress, comma, fabric-ai, llm, basecamp, hyprpaper-random,
  libnotify, trash-cli, unzip, zip, yazi)
- bat.nix: bat with nix-colors derived syntax theme
- carapace.nix: multi-shell completion (fish, nushell, bash)
- direnv.nix: automatic env loading with nix-direnv
- eza.nix: modern ls with icons, git status, long format
- lf.nix: terminal file manager with bat preview
- zoxide.nix: smarter cd with fish and nushell integration
- zellij-ps.nix: project session manager wrapping cli.zellij-ps
2026-04-26 12:06:36 +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 d59a6b82b6 chore: remove features.old archive and format all files
- Delete home/features.old/ (archived old flat feature modules)
- All content migrated to new profile-based structure
- Run alejandra formatter over 13 changed files
- nix flake check passes cleanly
2026-04-26 11:29:49 +02:00
m3tm3re d44bdad73a refactor: archive old features directory to features.old
The new profile-based structure (home/base, home/desktop, home/server,
home/profiles/, home/coding) is fully operational and imported via
home/lib/mkHomeConfig. The legacy home/features directory is no longer
referenced anywhere in the configuration.

Archived rather than deleted to preserve history for reference.
2026-04-26 11:22: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 73bd2b1f2e fix: spec review - add missing fish module to base/shell
- Create home/base/shell/fish.nix
- Add to base/shell/default.nix imports
- Migrate remaining hosts from features.cli.fish to base.shell.fish
2026-04-26 11:09:50 +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 06b430e067 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:48:52 +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
m3tm3re b1eb50a350 chore: add .worktrees to gitignore
For isolated feature development
2026-04-26 10:27:13 +02:00
m3tm3re 383f4ef56f feat: tuwunel matrix server + hermes update 2026-04-24 21:38:57 +02:00
m3tm3re d47680aef7 chore: n8n update 2026-04-22 19:26:10 +02:00
m3tm3re 047b60a6a8 refactor: update Pi agent configuration and devShell
- Switch model provider from zai/glm-5.1 to minimax/MiniMax-M2.7
- Add coding rules for Nix language and standard concerns
- Add linting tools (statix, deadnix) to devShell
- Simplify devShell configuration
- Update AGENTS.md project rules
2026-04-22 17:59:23 +02:00
m3tm3re 382b4c8c98 chore: hermes update 2026-04-21 19:00:49 +02:00
m3tm3re 7e0d60c95b feat: pi-agent wrapper 2026-04-14 18:36:55 +02:00
m3tm3re 24e39d19e3 feat: containerized pi agent 2026-04-13 21:28:13 +02:00
m3tm3re 53a30c7af3 chore: ignore .pi-lens artifacts and untrack cached files 2026-04-13 19:35:58 +02:00
m3tm3re 4684c5dc3e chore: include local changes and bump home-manager state to 26.05 2026-04-13 19:23:49 +02:00
m3tm3re 55aac2c910 fix: silence nix evaluation warnings for neovim/opencode/system 2026-04-13 19:18:25 +02:00
m3tm3re 40507bb930 feat: config with agents rework 2026-04-13 16:53:33 +02:00
m3tm3re 7bf686481c feat: config with agents rework 2026-04-13 16:44:18 +02:00
m3tm3re ab3332e45b feat: hermes agent for m3-ares 2026-04-09 19:56:19 +02:00
m3tm3re c92868308b chore: initialize taskplane tasks 2026-04-08 20:44:51 +02:00
m3tm3re 6a58b3656a flake update + hermes workaround for upstream bug 2026-04-08 17:48:27 +02:00
m3tm3re 38c27eff1c +basic hermes config 2026-04-06 18:44:07 +02:00
m3tm3re d9d4b6cd85 feat: add openwork to desktop packages, update flake inputs and misc config 2026-04-03 12:45:55 +02:00
m3tm3re 44c0234739 chore: update mcp config 2026-03-31 13:30:47 +02:00
m3tm3re 4f0a92e43b fix: nushell tv warning m3-atlas 2026-03-28 10:29:05 +01:00
m3tm3re 87939ce630 feat: implement agent skills 2026-03-28 10:17:29 +01:00
m3tm3re 1bc1616a4f m3-ares update 2026-03-22 17:21:25 +01:00
m3tm3re 43523cf2d8 +television, flake-update 2026-03-21 09:39:19 +01:00
m3tm3re 08baa5ee83 updated agents input 2026-03-14 10:07:21 +01:00
m3tm3re 114644ce63 updated agents input 2026-03-14 10:06:47 +01:00
m3tm3re 411c67d2c6 add mcps to home-config; +ghostty 2026-03-14 09:26:13 +01:00
m3tm3re e9f20d7dda chore: rekey secrets 2026-03-10 04:38:25 +01:00
m3tm3re 4ae2bb0f48 chore: flake update 2026-03-07 11:44:04 +01:00
m3tm3re b08be9132b feat: litellm provider for opncode 2026-03-03 20:07:25 +01:00
m3tm3re e4195230a5 chore: fix netbird ssh 2026-03-02 19:24:28 +01:00
m3tm3re 674ce6957c feat: authentik 2026-02-28 10:06:42 +01:00
m3tm3re a9022a4f55 refactor(netbird): use port registry and named IP variables 2026-02-27 16:03:12 +01:00
m3tm3re fa9747f3e9 refactor(ports): add netbird port definitions 2026-02-27 16:03:08 +01:00
m3tm3re 4920029c65 +openspec 2026-02-18 17:57:21 +01:00
m3tm3re a12958b68f chore: flake update 2026-02-18 16:28:31 +01:00
m3tm3re 2e550b91f5 feat(opencode): integrate rules into default devShell
- Switch agents input to local path for development
- Add default devShell with Opencode rules integration
- Update .gitignore to exclude generated Opencode files
- Upgrade opencode to v1.2.6
2026-02-17 20:11:14 +01:00
m3tm3re 1d3564f360 feat(opencode): deploy rules/ to ~/.config/opencode/rules/ via home-manager
- Add xdg.configFile entry for opencode/rules
- Rules deployed alongside skills, commands, context, prompts

Refs: T4 of rules-system plan
2026-02-17 18:59:43 +01:00
m3tm3re 8ead26a791 update opencode config, secrets, tailscale, and agents input
- opencode: remove deprecated google_auth, add git_master config,
  experimental truncation, use glm-4.6v for multimodal-looker,
  upgrade categories to glm-5, remove opencode-memory plugin
- m3-atlas: add ref/exa/outline/basecamp secret declarations
- m3-kratos: enable tailscale with ssh and reset flags
- agents: switch back to remote git input
2026-02-17 08:54:13 +01:00
m3tm3re 87baf2377f +opencode-memory 2026-02-16 19:57:16 +01:00
m3tm3re 7b9caedaa4 headscale ssh acl 2026-02-16 18:59:34 +01:00
m3tm3reandSisyphus 105e573c53 Switch to local m3ta-nixpkgs and enable services
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-15 18:16:11 +01:00
m3tm3reandSisyphus eda9f2a1f9 Enable mem0 and qdrant services on m3-ares
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-15 18:15:37 +01:00
m3tm3reandSisyphus f3536919f0 Update OpenCode configuration and add sqlite tools
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-15 18:15:00 +01:00
m3tm3re 5c0fe5abda apply updates from m3ta-nixpkgs 2026-02-11 19:59:59 +01:00
m3tm3re f80e907277 +td +sidecar 2026-02-10 20:08:32 +01:00
m3tm3re ffed020289 + Obsidian 2026-02-05 09:01:35 +01:00
m3tm3re a7ac2232ee flake update 2026-02-05 08:05:20 +01:00
m3tm3re c28c1953d0 hyprland opaque keybinding fix 2026-02-04 16:51:00 +01:00
m3tm3re f7a1591451 merge flake inputs 2026-01-26 20:53:49 +01:00
m3tm3re b6dab69d42 chore folder renaming for opencode: skill -> skills, command -> sommands 2026-01-26 20:50:39 +01:00
m3tm3re b6fa6c1bcf oh-my-opencode model structure for v3.x 2026-01-24 18:09:42 +01:00
m3tm3re 2449532b30 chore: update dependencies, add basecamp secrets, improve desktop environment
- Update opencode to v1.1.34
- Add new opencode agents (Prometheus, Metis, Momus, Atlas) and categories
- Switch m3ta-nixpkgs back to local path
- Add basecamp client credentials for m3-ares and m3-kratos
- Set NIXOS_OZONE_WL=1 for better Wayland app support in Hyprland
- Remove redundant wrl.enable from flatpak portal config
2026-01-23 18:14:08 +01:00
m3tm3re 39d2b5a609 chore: optimize gitea runner 2026-01-21 17:59:58 +01:00
m3tm3re 3b2d19f8a6 fix: jq + curl to gitea action runner 2026-01-20 21:17:08 +01:00
m3tm3re 4439e6d173 model changes opencode 2026-01-19 19:26:37 +01:00
m3tm3re 048244f122 fix(m3-ares): use stable tuxedo-drivers module to work around nixpkgs#480391
The unstable tuxedo-drivers module has a type error where cfg.settings
(a set) is passed directly to lib.any which expects a list. This was
introduced in commit 15d9ec6 and fixed in a77e30e, but the fix hasn't
propagated to our nixpkgs input yet.

Workaround: disable the unstable module and import from nixpkgs-stable.
2026-01-19 19:24:34 +01:00
m3tm3re 09e93ef6f0 flake update 2026-01-17 10:17:48 +01:00
m3tm3re dd59d2a56d fix: add nodejs to gitea runner hostPackages
- Enables actions/checkout@v4 to work on self-hosted nixos runner
- Fixes: nixpkgs-5yn (Gitea Actions runner missing Node.js)
2026-01-15 19:06:42 +01:00
m3tm3re f9415c05f9 Add Gitea Actions Runner and update OpenCode config
- Add Gitea Actions Runner service on m3-atlas with nixos:host label
- Configure agenix secret for runner token
- Add Antigravity provider models to OpenCode config
- Switch m3ta-nixpkgs to local path for development
2026-01-14 20:55:23 +01:00
m3tm3re e1de4805ce bd sync: 2026-01-13 20:51:49 2026-01-13 20:51:49 +01:00
m3tm3re f482759c2e bd sync: 2026-01-13 20:51:30 2026-01-13 20:51:30 +01:00
m3tm3re ad35d27135 opencode -> 1.1.14 2026-01-12 20:25:22 +01:00
m3tm3re 18ef6174bb opencode config changes 2026-01-11 13:13:07 +01:00
m3tm3re 9dfaccb77e feat: add wallpaper feature with 5 new wallpapers
- Add wallpapers.nix module for wallpaper management
- Update hyprland and rofi configs
- Update m3-ares and m3-kratos user configs
- Update flake inputs
2026-01-10 18:09:58 +01:00
m3tm3re 5e4e007b67 opencode update 2026-01-10 06:14:02 +01:00
m3tm3re 1316d3268f chore: update opencode, hyprland config, and disable qdrant
- Remove opencode-anthropic-auth plugin from opencode config
- Add XDG environment variables for Hyprland session awareness
- Disable qdrant service on m3-ares host
2026-01-09 18:18:45 +01:00