51 lines
2.9 KiB
Markdown
51 lines
2.9 KiB
Markdown
# 129 — `house`
|
|
|
|
Yuvomi family planner (formerly Oikos). Self-hosted family planner with 14 modules: calendar, tasks, meals, groceries, budget, documents, notes, contacts, birthdays, housekeeping, recipes, reminders.
|
|
|
|
## At a glance
|
|
|
|
- **Hostname:** `house`
|
|
- **IP:** `192.168.8.212` (static)
|
|
- **Privilege:** unprivileged
|
|
- **Resources:** 1 core / 1344 MiB RAM / 8 GiB rootfs (Debian 13)
|
|
- **Mounts:** none
|
|
- **Public hostname:** [`house.hubris.network`](../infrastructure/ingress.md) → VPS traefik → Caddy
|
|
|
|
## Service / port map
|
|
|
|
| Service | Listen | Notes |
|
|
|---------|--------|-------|
|
|
| `oikos` (Yuvomi) | `0.0.0.0:3000` | Docker Compose at `/opt/yuvomi/`, image `ghcr.io/ulsklyc/yuvomi` |
|
|
|
|
## Integrations
|
|
|
|
- **Authentik SSO (OIDC):** Provider `Provider for Yuvomi` (PK 31) in Authentik on VPS. Env vars in `/opt/yuvomi/.env`: `OIDC_ISSUER`, `OIDC_CLIENT_ID`, `OIDC_CLIENT_SECRET`. Redirect URI: `https://house.hubris.network/auth/oidc/callback`.
|
|
- **Paperless DMS connector (native):** Yuvomi connects directly to Paperless-ngx API at `http://192.168.8.130:8000/`. API token stored in SQLite `dms_accounts` table. Search, link, and upload documents from Yuvomi to Paperless via Settings → Documents → DMS.
|
|
- **Weather widget:** Open-Meteo (free, no API key). Munich coordinates set.
|
|
- **Google Calendar:** OAuth configured via env vars (`GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET`, `GOOGLE_REDIRECT_URI`). Redirect URI: `https://house.hubris.network/api/v1/calendar/google/callback`. Authorize in Settings → Calendar → Connect Google Calendar.
|
|
|
|
## Config paths
|
|
|
|
- `/opt/yuvomi/docker-compose.yml` — downloaded from upstream
|
|
- `/opt/yuvomi/.env` — config including secrets (untracked)
|
|
- `/opt/yuvomi/data/` — SQLCipher SQLite DB (`oikos.db`)
|
|
- `/opt/yuvomi/backups/` — auto backups
|
|
- `/opt/yuvomi/modules/` — Yuvomi modules (empty for now)
|
|
|
|
## Related
|
|
|
|
- [Caddy (121)](121-caddy.md) — LAN reverse proxy (`house.hubris.network → 192.168.8.212:3000`)
|
|
- [VPS ingress](../infrastructure/ingress.md) — public edge (cert mirror + traefik router)
|
|
- [DNS (107)](107-dns.md) — Technitium A record `house → 192.168.8.175` (LAN path via Caddy)
|
|
- [Paperless (103)](103-paperless.md) — native DMS connector (API at `:8000`)
|
|
- [TRMNL (128)](128-trmnl.md) — Google Calendar tokens source
|
|
- [Deployment plan](../plans/2026-06-25-yuvomi-deployment.md)
|
|
|
|
## Changelog
|
|
|
|
### 2026-06-27 — Google Calendar OAuth env vars configured
|
|
`GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET`, `GOOGLE_REDIRECT_URI` set in `.env`. New OAuth client ID (`-bho4iq..`).
|
|
|
|
### 2026-06-26 — provisioned
|
|
|
|
LXC 129 created (Debian 13, unprivileged, `192.168.8.212`). Docker installed. Yuvomi container running on `:3000` from `ghcr.io/ulsklyc/yuvomi:latest`. Caddy block + DNS A record + VPS traefik router `house-public` for public access. Authentik OIDC provider created (PK 31). WebDAV document bridge on paperless LXC (103) at `:8088` for Paperless auto-import. |