167 lines
8.1 KiB
Markdown
167 lines
8.1 KiB
Markdown
# 00 — Master Index
|
|
> Last updated: 2026-06-14
|
|
> Quick-reference card for Claude. Read this first, then load specific files only as needed.
|
|
|
|
---
|
|
|
|
## 🏠 Infrastructure Constants
|
|
|
|
| Key | Value |
|
|
|---|---|
|
|
| **Proxmox host** | `192.168.1.48:8006` |
|
|
| **Gateway** | `192.168.1.1` |
|
|
| **Public IP** | `178.41.205.8` (dynamic — managed by CT 108) |
|
|
| **NAS** | `192.168.1.12` (Synology) |
|
|
| **Domain** | `spendlik.sk` |
|
|
| **Gitea owner** | `spendlik` |
|
|
| **MCP server** | `mcp.spendlik.sk` (CT 112) |
|
|
| **Proxmox kernel** | `6.14.11-5-pve` PINNED — 6.17.x and 7.0.x break NVIDIA 550 DKMS |
|
|
|
|
---
|
|
|
|
## 🖥️ Container & VM Inventory
|
|
|
|
| ID | Hostname | IP | Domain | Purpose |
|
|
|---|---|---|---|---|
|
|
| 100 | n8n | 192.168.1.29 | automation.spendlik.sk | Workflow automation (Authelia protected) |
|
|
| 101 | reverse-proxy | 192.168.1.10 | — | nginx reverse proxy for all services |
|
|
| 102 | authelia | 192.168.1.50 | auth.spendlik.sk | SSO / 2FA gateway |
|
|
| 103 | matrix-synapse | 192.168.1.60 | matrix.spendlik.sk | Self-hosted messaging |
|
|
| 104 | snappymail | 192.168.1.55 | email.spendlik.sk | Webmail (Authelia protected) |
|
|
| 105 | audiobookshelf | 192.168.1.70 | books.spendlik.sk | Ebooks / audiobooks (NAS bind mount) |
|
|
| 106 | jellyfin | 192.168.1.75 | jellyfin.spendlik.sk | Media server (NAS NFS mount) |
|
|
| 107 | wireguard | 192.168.1.80 | — | VPN (UDP 51820) |
|
|
| 108 | ddns | 192.168.1.95 | — | DDNS updater (WebSupport API v2) |
|
|
| 109 | gitea | 192.168.1.90 | git.spendlik.sk | Self-hosted Git |
|
|
| 110 | windows11 (VM) | 192.168.1.227 | — | RTX 4060 passthrough, Rhino 7 + Sunshine |
|
|
| 111 | paperless | 192.168.1.111 | paperless.spendlik.sk | Document management (6-lang OCR, media on NAS) |
|
|
| 112 | mcp-server | 192.168.1.100 | mcp.spendlik.sk | MCP bridge — Proxmox + Gitea tools for Claude |
|
|
| 113 | bambuddy | 192.168.1.113 | bambuddy.spendlik.sk | Planned: BAMbuddy (Bambu A1 management) |
|
|
| 114 | euro-office | 192.168.1.114 | office.spendlik.sk | Planned: Euro-Office (online office suite, Docker) |
|
|
| 115 | vaultwarden | 192.168.1.115 | vault.spendlik.sk | Password manager (Vaultwarden, Docker, Bitwarden-compatible) |
|
|
|
|
> Next available CT ID: **116** · Next available IP: **192.168.1.116** (check before assigning)
|
|
|
|
---
|
|
|
|
## 💻 Devices
|
|
|
|
| Device | OS | Key Detail |
|
|
|---|---|---|
|
|
| Main PC | CachyOS (Arch), KDE Plasma 6 / Wayland | i7-13700K, RTX 4060 Ti, 32GB DDR5 |
|
|
| Galaxy S25 | Android | WireGuard VPN client; MGit for Obsidian sync; Bitwarden |
|
|
| Galaxy Tab S9 | Android | MGit for Obsidian sync; Bitwarden |
|
|
| Bambu A1 + AMS Lite | — | LAN Only Mode, OrcaSlicer |
|
|
|
|
---
|
|
|
|
## 📁 Documentation Map
|
|
|
|
| File | Covers |
|
|
|---|---|
|
|
| `homelab-overview.md` | Hardware specs, full container/VM table, NAS mounts, network diagram |
|
|
| `cachy-overview.md` | CachyOS main PC — hardware, software, kernel, services, keyboard customisation |
|
|
| `01_hardware_and_software.md` | Proxmox server hardware |
|
|
| `02_linux_containers_and_virtual_machines.md` | Container configs, resources, notes |
|
|
| `03_network_setup.md` | DNS records, WebSupport IDs, DDNS, port forwarding |
|
|
| `04_audiobookshelf_deployment.md` | CT 105 — full deploy guide, NAS mount, troubleshooting |
|
|
| `05_jellyfin_deployment.md` | CT 106 — full deploy guide, NFS, transcoding notes |
|
|
| `06_wireguard_deployment.md` | CT 107 — VPN config, client setup, keys |
|
|
| `09_gpu_setup.md` | RTX 4060 passthrough, VFIO, kernel 6.14 pin, Sunshine |
|
|
| `10_ddns_deployment.md` | CT 108 — WebSupport API v2, HMAC-SHA1 auth, record IDs |
|
|
| `11_gitea_deployment.md` | CT 109 — Gitea binary install, nginx, SSL |
|
|
| `12_euro_office_deployment.md` | CT 114 — Euro-Office Docker deploy, nginx, Authelia, SSL (planned) |
|
|
| `13_vaultwarden_deployment.md` | CT 115 — Vaultwarden Docker deploy, nginx, SSL |
|
|
| `homelab-goals.md` | Roadmap and long-term infrastructure goals |
|
|
|
|
> 💡 Load only the file(s) relevant to the current task. Do not load all files by default.
|
|
|
|
---
|
|
|
|
## 🔑 Key Gotchas (load before touching these areas)
|
|
|
|
| Area | Warning |
|
|
|---|---|
|
|
| **nginx / certbot** | Certbot corrupts configs — always inspect after cert issuance; check for duplicate `server_name` and missing closing braces |
|
|
| **NFS mounts** | Use `soft,timeo=30,retrans=3` — hard NFS can freeze Proxmox host |
|
|
| **DDNS script** | `/tmp/ddns_last_ip` cache; reboot clears it fine — but stale cache can miss IP change |
|
|
| **WebSupport DNS** | Two separate management pages — missing the second caused an outage; update both. DNS A record must exist before certbot can verify. |
|
|
| **Gitea writes** | Always read file content before writing — writes replace entire file |
|
|
| **Proxmox kernel** | PINNED to `6.14.11-5-pve` via `proxmox-boot-tool kernel pin`. 6.17.x and 7.0.x kernels still installed but won't boot. Do NOT unpin or upgrade kernel without verifying NVIDIA 550 DKMS support first. |
|
|
| **OpenRGB** | Uninstalled — SMBus interaction with ADATA XPG GAMMIX D35 poses hardware risk |
|
|
| **Hairpin NAT** | Slovak Telekom router blocks hairpin — test external domains from mobile data, not LAN |
|
|
| **WebSupport API** | Uses numeric service ID `15056760`, not domain name; HMAC-SHA1 signed requests |
|
|
| **kocka-novinky.sk** | Wordfence blocks login — keep disabled. wp-config.php WP_SITEURL/WP_HOME hardcoded to www.kocka-novinky.sk. Zen browser has Content-Encoding issue — use Firefox/Chrome. |
|
|
|
|
---
|
|
|
|
## 🔄 Active Projects (as of 2026-06-14)
|
|
|
|
| Project | Next Action | Reference |
|
|
|---|---|---|
|
|
| kocka-novinky.sk automation | Build n8n POC workflow: Brickset → Claude → WordPress lego-set + post | CT 100 |
|
|
| Paperless-ngx | Processing ~730 new documents; next: Gemini post-processing | CT 111 |
|
|
| Gemini post-processing | Get Gemini API key → install Python package in CT 111 | CT 111 |
|
|
| Euro-Office | Deploy CT 114 (`office.spendlik.sk`) | CT 114 (planned) |
|
|
| BAMbuddy | Check Bambu A1 Developer Mode → deploy CT 113 | CT 113 (planned) |
|
|
| WireGuard DDNS | Add `vpn.spendlik.sk` DNS record + update CT 108 script | CT 107/108 |
|
|
| Bookmark manager | Decide tool (Linkding / Hoarder / Shiori) → deploy CT 116 | CT 116 (planned) |
|
|
| Authelia enforcement | Extend 2FA to Jellyfin, Audiobookshelf, Gitea | CT 102/101 |
|
|
| Vaultwarden | ✅ Deployed — remaining: import existing passwords | CT 115 |
|
|
|
|
> Full task list: `obsidian-vault/Tasks.md`
|
|
|
|
---
|
|
|
|
## 🧠 Life OS — Obsidian Vault Structure
|
|
|
|
| Folder | Purpose |
|
|
|---|---|
|
|
| `00 Inbox` | Capture everything first |
|
|
| `01 Goals` | Long-term goals |
|
|
| `02 Projects` | Active projects (each has its own `.md`) |
|
|
| `03 Areas` | Ongoing responsibilities (Homelab, Main PC, Personal Admin) |
|
|
| `04 Daily Notes` | Daily log |
|
|
| `05 Resources` | Reference material |
|
|
| `06 Archive` | Completed projects |
|
|
| `Tasks.md` | Master task dashboard (hand-curated) |
|
|
|
|
**Sync**: Obsidian Git plugin on PC → Gitea `spendlik/obsidian-vault`; MGit on Android
|
|
|
|
### 📋 Vault Quick Reference — Known File Paths
|
|
|
|
| File | Purpose |
|
|
|---|---|
|
|
| `Tasks.md` | Live task dashboard |
|
|
| `05 Resources/Possible Purchases.md` | Purchase wishlist — add items here directly |
|
|
| `05 Resources/3D Print Queue.md` | 3D print job queue |
|
|
| `05 Resources/Proxmox LXC Templates.md` | LXC template reference |
|
|
| `03 Areas/Personal Admin.md` | Personal admin tasks (car, devices, subscriptions) |
|
|
| `03 Areas/Homelab.md` | Homelab recurring tasks |
|
|
| `03 Areas/Main PC.md` | CachyOS main PC tasks |
|
|
|
|
> 💡 For purchases or print queue additions, read the file first, append the item, write back. No directory exploration needed.
|
|
|
|
---
|
|
|
|
## 🛠️ Automation Stack
|
|
|
|
| Layer | Tool | Location |
|
|
|---|---|---|
|
|
| Scheduling / plumbing | n8n | CT 100 / automation.spendlik.sk |
|
|
| AI content generation | Claude API (claude-sonnet) | via n8n HTTP node |
|
|
| Agentic coding assistant | Claude Code 2.1.173 | CachyOS main PC (VSCodium extension) |
|
|
| Notifications | Matrix (automation alerts) | CT 103 |
|
|
| DNS management | WebSupport REST API v2 | CT 108 |
|
|
| Affiliate site | WordPress on WebSupport hosting | kocka-novinky.sk |
|
|
| Password manager | Vaultwarden | CT 115 / vault.spendlik.sk |
|
|
|
|
---
|
|
|
|
## 🗃️ Gitea Repositories
|
|
|
|
| Repo | Visibility | Purpose |
|
|
|---|---|---|
|
|
| `Claude_Homelab` | Public | Infrastructure docs, deploy guides, this index |
|
|
| `obsidian-vault` | Private | Life OS / second brain |
|