This is a monorepo to manage my personal homelab infrastructure. Running Universal Blue uCore (Fedora CoreOS-based immutable OS) on the main host ("mouse") with Terraform/Pulumi for cloud resource management. The infrastructure provides object storage (RustFS), monitoring (Netdata), and backup capabilities (Backblaze B2).
Universal Blue uCore provides immutable, container-first host configuration. Configuration in infra/ucore/ using Butane → Ignition.
Entry point: infra/ucore/butane/
Single-node k0s cluster planned for mouse. Configuration managed via k0sctl.
Entry point: infra/k0s/
Terraform manages cloud resources (maintenance mode — migrating to Pulumi):
- Cloudflare: DNS and domain management (
infra/terraform/cloudflare/) - Backblaze B2: Backup storage provisioning (
infra/terraform/backblaze/) - Terraform Cloud: Workspace management (
infra/terraform/tf-cloud/)
Pulumi stubs created for migrating cloud resources from Terraform (Go-based):
- Backblaze: B2 provisioning (
infra/pulumi/backblaze/) — has initial Go code - Cloudflare: DNS management (
infra/pulumi/cloudflare/) — stub - Terraform Cloud: Workspace management (
infra/pulumi/tf-cloud/) — stub
Age-based secrets management for encrypting sensitive configuration values inline with repository files.
Primary infrastructure host running:
- Storage: ZFS pools
- Object Storage: RustFS (S3-compatible, Rust-based)
- Monitoring: Netdata for system metrics
Configuration: infra/ucore/butane/hosts/mouse.bu
DNS and domain management for multiple domains (familylegacy, legacy, prof, public zones)
S3-compatible backup storage for long-term data retention
| Tool | Use | Active |
|---|---|---|
| uCore | Operating System | ☑️ |
| SOPS | Secrets Management | ☑️ |
| Terraform | Cloud Resource Management | ☑️ |
| Pulumi | Cloud Resource Management | 🚧 |
| ZFS | Storage & Snapshots | ☑️ |
| RustFS | S3-compatible Storage | ☑️ |
| Netdata | System Monitoring | ☑️ |
| k0s | Kubernetes (single-node) | 🚧 |
| Pre-commit | Code Quality Automation | ☑️ |
| mise | Task Runner & Tool Mgmt | ☑️ |
Thank you to the below for inspiration
- onedr0p
- anthr76
- danmanners
- Github Issues
See commit history