This commit represents a major refactoring of the ORION infrastructure project, transforming it from
scattered bash scripts into a clean, Infrastructure-as-Code architecture with proper domain separation.
Major Changes:
1. shell-config/ (NEW DIRECTORY):
- .zshrc - Complete Zsh configuration with Oh My Zsh + Antigen
- antigen.zsh - Antigen plugin manager
- install-zsh.sh - Automated installation script
- README.md - Shell configuration documentation
Features:
- Oh My Zsh with 14 infrastructure plugins (git, docker, terraform, ansible, kubectl, etc.)
- Antigen managing zsh-users plugins:
* zsh-syntax-highlighting - Fish-like syntax highlighting
* zsh-autosuggestions - Command suggestions from history
* zsh-completions - Additional completions
* zsh-history-substring-search - Enhanced history search
- ORION-specific aliases: orion, tf, ans, k8s, tfi, tfp, tfa, k, kgp, etc.
- Custom functions: deploy(), orion-status(), ssh-router(), ssh-coordinator()
- Environment variables: ORION_ROOT, TF_LOG, ANSIBLE_STDOUT_CALLBACK
- Welcome message with quick reference
2. docs/DEVELOPMENT_ENVIRONMENT.md (NEW):
- Complete development environment setup guide
- Zsh installation instructions
- Plugin configuration details
- ORION-specific features documentation
- Claude Code local server setup (3 methods):
* Method 1: SSH tunneling (recommended)
* Method 2: Direct remote execution
* Method 3: VS Code Remote - SSH
- SSH tunneling guide with autossh
- Systemd service for persistent tunnels
- Customization options
- Troubleshooting guide
3. .claude/settings.json updates:
- Add SHELL="/bin/zsh" to environment variables
4. ARCHITECTURE.md updates:
- Add reference to Development Environment documentation
5. README.md updates:
- Add Development Environment link to documentation section
Technology Stack:
- Zsh 5.9 - Modern shell with powerful features
- Oh My Zsh - Framework with 200+ plugins
- Antigen - Plugin manager for zsh-users ecosystem
- zsh-users plugins - Best-in-class Zsh enhancements
Infrastructure Optimizations:
- Pre-configured for Terraform, Ansible, Kubernetes workflows
- One-command deployment: deploy()
- Quick navigation: orion, tf, ans, k8s
- Status monitoring: orion-status()
- SSH helpers for all VMs
Claude Code Integration:
- Local server connectivity via SSH tunneling
- Remote execution support
- VS Code Remote - SSH configuration
- Persistent tunnel setup with autossh
- Systemd service for production use
Impact:
- Developers get modern shell with autocomplete and syntax highlighting
- 50+ ORION-specific aliases and functions
- Fish-like UX (autosuggestions, syntax highlighting) in Zsh
- Claude Code can connect to local Proxmox infrastructure
- Remote development fully supported
- Complete documentation for team onboarding
Migration Path:
1. Run ./shell-config/install-zsh.sh
2. Start zsh or logout/login
3. Enjoy modern shell with ORION integration
|
||
|---|---|---|
| .claude | ||
| .github/workflows | ||
| Artefacts | ||
| EFI | ||
| docs | ||
| router-configs | ||
| scripts | ||
| shell-config | ||
| systemd | ||
| terraform | ||
| tools | ||
| vm-configs | ||
| .gitignore | ||
| .gitmodules | ||
| AI_MAZE_ARCHITECTURE.md | ||
| ARCHITECTURE.md | ||
| ARCHITECTURE_REVIEW.md | ||
| CHANGELOG.md | ||
| INFRASTRUCTURE_AS_CODE_ARCHITECTURE.md | ||
| IPV6_ROUTING_INTEGRATION.md | ||
| Makefile | ||
| README.md | ||
| install.sh | ||
| orion-config.json | ||
| setup | ||
README.md
🎯 ORION v2.0 Architecture
Complete Infrastructure as Code stack for Dell PowerEdge R730, designed from the ground up as an AI-first, agent-driven architecture with multi-layer infrastructure.
✨ What's New in v2.0
- ✅ Infrastructure as Code - Terraform for VMs, Ansible for configuration
- ✅ LXC AI/ML Stack - Ollama, LiteLLM, FlowiseAI via helper scripts (5-minute deployment)
- ✅ Kubernetes on K3s - Lightweight orchestration for Backstage + Vapor API
- ✅ Multi-Agent Architecture - Proper 4-layer AI stack with specialized agents
- ✅ IPv6 BGP Routing - AS394955 with 2602:F674::/48 prefix
- ✅ Security Through Obscurity - "AI Maze" using Backstage + Swift/Vapor
- ✅ One-Command Deployment - Complete stack via Makefile
- ✅ 396 Helper Scripts - Automated LXC container deployment
🚀 Quick Start
# Clone repository
git clone https://github.com/luci-digital/luci-macOSX-PROXMOX.git
cd luci-macOSX-PROXMOX
# Configure Terraform
cp terraform/terraform.tfvars.example terraform/terraform.tfvars
nano terraform/terraform.tfvars # Add Proxmox API token
# Deploy complete stack
make deploy-full
# Or deploy in phases:
make apply # Deploy VMs with Terraform
make deploy-ai-stack # Deploy AI/ML LXC containers
make configure # Configure VMs with Ansible
make k8s-deploy # Deploy K8s workloads
Documentation:
- 📘 Architecture Guide - Complete v2.0 architecture (THIS IS THE MAIN DOC!)
- 🔍 Architecture Review - AI engineering analysis
- 🤖 Helper Scripts Integration - LXC deployment guide
- 🌐 IPv6 Routing - BGP configuration
- 🤖 Claude Code Integration - AI-assisted development setup
- 💻 Development Environment - Zsh, Oh My Zsh, Antigen setup
- 🏗️ Terraform Guide - Infrastructure deployment
- 📚 Reference Docs - Archived v1.0 documentation
🏗️ Architecture Overview
Dell R730 ORION (56 cores, 384GB RAM)
├─ Proxmox VE 8.x (Hypervisor)
│
├─ Infrastructure VMs (Terraform)
│ ├─ VM 200: Router (BIRD2 BGP, IPv6, Firewall) - 8C/32GB
│ ├─ VM 300: AI Coordinator (Multi-agent orchestration) - 4C/16GB
│ ├─ VM 500: NetBox (IPAM) - 4C/8GB
│ └─ VM 600-603: K3s Cluster (1 master + 3 workers) - 16C/56GB
│
├─ LXC Containers (Helper Scripts - 5 min deploy)
│ ├─ LXC 1000: Ollama (LLM inference)
│ ├─ LXC 1001: OpenWebUI (ChatGPT-like UI)
│ ├─ LXC 1002: LiteLLM (API gateway)
│ ├─ LXC 1003: FlowiseAI (Visual agent builder)
│ ├─ LXC 1004: PostgreSQL + pgvector
│ ├─ LXC 1005: Redis
│ ├─ LXC 1006: Minio (S3 storage)
│ ├─ LXC 1007: Nginx Proxy Manager
│ └─ LXC 1008: Wireguard VPN
│
└─ Kubernetes Workloads (K3s)
├─ Infrastructure: Prometheus, Grafana, Cilium, Longhorn
├─ Applications: Backstage, Vapor API (Swift)
└─ AI Agents: Infrastructure, Network, Security, DevOps
📦 Repository Structure
luci-macOSX-PROXMOX/
├── terraform/ # Infrastructure as Code
│ ├── main.tf # VM definitions
│ ├── variables.tf # Variables
│ └── outputs.tf # Outputs
├── ansible/ # Configuration management
│ ├── playbooks/ # Ansible playbooks
│ └── roles/ # Ansible roles
├── kubernetes/ # K8s manifests
│ ├── infrastructure/ # Core services
│ ├── applications/ # Apps (Backstage, Vapor)
│ └── ai-agents/ # AI agents
├── router-configs/ # BIRD2/GoBGP configs
├── docs/ # Documentation
│ ├── deployment-guide/
│ ├── ai-agent-design/
│ └── reference/ # Archived v1.0 docs
├── Makefile # One-command deployment
├── ARCHITECTURE.md # Main architecture doc
└── README.md # This file
🌟 Key Features
Infrastructure as Code: Declarative, reproducible infrastructure via Terraform + Ansible
LXC for AI/ML: 5-minute deployment vs hours of manual K8s configuration
4-Layer AI Stack: Proper architecture - Inference → Orchestration → Agents → Coordinator
Security "AI Maze": Backstage frontend + Swift/Vapor API to confuse automated scanners
IPv6 BGP: Production AS394955, peering with Telus AS6939, prefix 2602:F674::/48
Hybrid Orchestration: VMs for infra, LXC for AI/ML, K8s for apps - right tool for the job
396 Helper Scripts: Community-maintained automation for everything from databases to VPNs
🎯 What Makes This Different?
| Aspect | v1.0 (Old) | v2.0 (Current) |
|---|---|---|
| Deployment | 4 conflicting scripts | Single Makefile path |
| AI Stack | Manual K8s manifests | 5-min LXC deployment |
| Infrastructure | Bash scripts | Terraform + Ansible |
| Documentation | Scattered | Consolidated |
| Architecture | Ambiguous | 4-layer AI stack |
| Deployment Time | 4-6 hours | ~30 minutes |
🍎 Original OSX-PROXMOX Guide
The following guide provides the original OSX-PROXMOX installation method for running macOS on Proxmox VE with AMD or Intel hardware.
🛠 Installation Guide
- Install a FRESH/CLEAN version of Proxmox VE (v7.0.XX ~ 8.4.XX) - just follow the Next, Next & Finish (NNF) approach.
- Preliminary support for Proxmox VE V9.0.0 BETA.
- Open the Proxmox Web Console → Navigate to
Datacenter > YOUR_HOST_NAME > Shell. - Copy, paste, and execute the command below:
/bin/bash -c "$(curl -fsSL https://install.osx-proxmox.com)"
🎉 Voilà! You can now install macOS!

🔧 Additional Configuration
Install EFI Package in macOS (Disable Gatekeeper First)
sudo spctl --master-disable
🍏 macOS Versions Supported
✅ macOS High Sierra - 10.13
✅ macOS Mojave - 10.14
✅ macOS Catalina - 10.15
✅ macOS Big Sur - 11
✅ macOS Monterey - 12
✅ macOS Ventura - 13
✅ macOS Sonoma - 14
✅ macOS Sequoia - 15
🖥 Proxmox VE Versions Supported
✅ v7.0.XX ~ 8.4.XX
🔄 OpenCore Version
- April/2025 - 1.0.4 → with SIP Enabled, DMG only signed by Apple and all features of securities
☁️ Cloud Support (Run Hackintosh in the Cloud!)
- 🌍 VultR
- 📺 Video Tutorial (Enable captions for better understanding)
- Now has configurable bridges, and can add as many bridges and specify the subnet for them.
⚠️ Disclaimer
🚨 FOR DEVELOPMENT, STUDENT, AND TESTING PURPOSES ONLY.
I am not responsible for any issues, damage, or data loss. Always back up your system before making any changes.
📌 Requirements
Since macOS Monterey, your host must have a working TSC (timestamp counter). Otherwise, if you assign multiple cores to the VM, macOS may crash due to time inconsistencies. To check if your host is compatible, run the following command in Proxmox:
dmesg | grep -i -e tsc -e clocksource
✅ Expected Output (for working hosts):
clocksource: Switched to clocksource tsc
❌ Problematic Output (for broken hosts):
tsc: Marking TSC unstable due to check_tsc_sync_source failed
clocksource: Switched to clocksource hpet
🛠 Possible Fixes
- Disable "ErP mode" and all C-state power-saving modes in your BIOS. Then power off your machine completely and restart.
- Try forcing TSC in GRUB:
- Edit
/etc/default/gruband add:clocksource=tsc tsc=reliable - Run
update-gruband reboot (This may cause instability).
- Edit
- Verify the TSC clock source:
The output must becat /sys/devices/system/clocksource/clocksource0/current_clocksourcetsc.
🔍 Troubleshooting
❌ High Sierra & Below - Recovery Server Could Not Be Contacted
If you encounter this error, you need to switch from HTTPS to HTTP in the installation URL:
-
When the error appears, leave the window open.
-
Open Installer Log (
Window > Installer Log). -
Search for "Failed to load catalog" → Copy the log entry.
-
Close the error message and return to
macOS Utilities. -
Open Terminal, paste the copied data, and remove everything except the URL (e.g.,
https://example.sucatalog). -
Change
https://tohttp://. -
Run the command:
nvram IASUCatalogURL="http://your-http-url.sucatalog" -
Quit Terminal and restart the installation.
❌ Problem for GPU Passthrough
If you see an Apple logo and the bar doesn’t move on your external display, you need to disable “above 4g decoding” in the motherboard’s BIOS.
In some environments it is necessary to segment the IOMMU Groups to be able to pass the GPU to the VM.
- Add the content
pcie_acs_override=downstream,multifunction pci=nommconfin the file/etc/default/grubat the end of the lineGRUB_CMDLINE_LINUX_DEFAULT; - After changing the grub file, run the command
update-gruband reboot your PVE.
🎥 Demonstration (in Portuguese)
📽️ Watch on YouTube
(Enable auto-translate captions for English subtitles!)
🎖 Credits
- OpenCore/Acidanthera Team - Open-source bootloader
- Corpnewt - Tools (ProperTree, GenSMBIOS, etc.)
- Apple - macOS
- Proxmox - Fantastic virtualization platform & documentation