b953909e0a34d7246cd6cddb5d4914a16583de5a
Replace the Python venv with a Nix devshell pinning ansible-core 2.21.3, ansible-lint, yamllint and a Python with proxmoxer/requests. The Python dependencies share the interpreter that runs ansible, so pve-*.yml plays on implicit localhost can import proxmoxer without inventory changes. The shellHook exports absolute ANSIBLE_CONFIG, ANSIBLE_INVENTORY, ANSIBLE_ROLES_PATH and ANSIBLE_COLLECTIONS_PATH, so commands work from the repository root as well as from ansible/. Also un-ignore .envrc, which the global gitignore hides, and ignore the stray .ansible/ runtime directory. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GTocXkGUUazHdKKd3r9k71
HomeLab Infrastructure
Active HomeLab infrastructure is managed through Ansible.
Active Files
ansible/— current control plane.ansible/inventory/hosts.yml— inventory and host facts.ansible/playbooks/check.yml— safe connectivity/facts check.
Archive
Historical pre-Proxmox material is kept under:
archive/2026-07-proxmox-migration/
It contains old NixOS configs, Docker Compose service definitions, Gitea workflows, deploy scripts and old Ansible bootstrap playbooks.
Basic Check
cd ansible
ansible-playbook playbooks/check.yml
Grimmory MCP
tools/grimmory-mcp/ contains the read-only Grimmory API integration for
OpenCode and the explicitly invoked Obsidian synchronization tools.
npm install --prefix tools/grimmory-mcp
npm run configure --prefix tools/grimmory-mcp
npm test --prefix tools/grimmory-mcp
OpenCode registers the server globally. After restarting OpenCode, use
/grimmory-sync to update individual book notes under 90 Library/Books and
covers under 99 System/Export/Grimmory/Covers.
Languages
HCL
25%
Jinja
24.4%
JavaScript
22.3%
Makefile
9.7%
Nix
6.7%
Other
11.9%