- Overview
- 1. About Ghaf
- 2. Features
- 3. Architecture
- 3.1. Architectural Variants
- 3.2. Architecture Decision Records
- 3.2.1. Minimal Host
- 3.2.2. Networking VM
- 3.2.3. Intrusion Detection System VM
- 3.2.4. Platform Bus for Rust VMM
- 3.3. Hardening
- 3.4. Secure Boot
- 3.5. Stack
- For Developers
- 4. Contributing
- 5. Reference Implementations
- 5.1. Development
- 5.1.1. Build and Run
- 5.1.2. Running Remote Build on NixOS
- 5.1.3. Installer
- 5.1.4. Cross-Compilation
- 5.1.5. Creating Application VM
- 5.1.6. Hardware Configuration
- 5.1.7. Profiles Configuration
- 5.1.8. labwc Desktop Environment
- 5.1.9. IDS VM Further Development
- 5.1.10. systemd Service Hardening
- 5.2. Troubleshooting
- 5.2.1. Analyzing System Logs
- 5.2.2. Debugging systemd Using systemctl
- 5.2.3. Inspecting Services with systemd-analyze
- 5.2.4. Using strace for Debugging Initialization Sequence
- 5.2.5. Early Shell Access
- 5.3. Ghaf as Library: Templates
- 5.3.1. Example Project
- 5.3.2. Modules Options
- 6. Technologies
- 6.1. Compartmentalization
- 6.2. Passthrough
- 6.2.1. Binding Device to VFIO Driver
- 6.2.2. NVIDIA Jetson AGX Orin: UART Passthrough
- 6.2.3. NVIDIA Jetson AGX Orin: PCIe Passthrough
- 6.2.4. Generic x86: PCIe Passthrough on crosvm
- 6.2.5. NVIDIA Jetson: UARTI Passthrough to netvm
- 6.2.6. Device Tree Overlays for Passthrough
- 6.3. Platform Bus Virtualization: NVIDIA BPMP
- 6.4. Hypervisor Options
- Build System and Supply Chain
- 7. Continuous Integration and Distribution
- 8. Supply Chain Security
- 8.1. SLSA Framework
- 8.2. Basic Security Measures
- 8.3. Software Bill of Materials
- 8.4. Public Key Infrastructure
- 8.5. Security Fix Automation
- 9. Release Notes
- 9.1. Release ghaf-24.12
- 9.2. Release ghaf-24.09.4
- 9.3. Release ghaf-24.09.3
- 9.4. Release ghaf-24.09.2
- 9.5. Release ghaf-24.09.1
- 9.6. Release ghaf-24.09
- 9.7. Release ghaf-24.06
- 9.8. Release ghaf-24.03
- 9.9. Release ghaf-23.12
- 9.10. Release ghaf-23.09
- 9.11. Release ghaf-23.06
- 9.12. Release ghaf-23.05
- Ghaf Usage Scenarios
- 10. Showcases
- 10.1. Running Windows VM on Ghaf
- 10.2. Running Cuttlefish on Ghaf
- Appendices
- 11. Glossary
- 12. Research Notes
- 12.1. i.MX 8QM Ethernet Passthrough
- 12.2. System Installation