You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update Quickstart: bootstrap is primary path, ISO is workflow artifact
The bootstrap/rebase path is the primary install method since:
- The OCI image is always available at ghcr.io (cosign-signed)
- The ISO exceeds GitHub Releases' 2GB limit (available as workflow
artifact with 90-day retention)
- OVA/QCOW2 require local build from the OCI image
README Quickstart now shows:
- Bootstrap as the recommended path (install Fedora, run script, reboot)
- Build VM locally as second option (scripts/vm/build-qcow2.sh)
- Development mode as third option
Quickstart doc (docs/install/quickstart.md) rewritten with:
- Honest artifact availability table explaining what's where
- Bootstrap as Path A with full copy-paste commands
- VM build as Path B with local build instructions
- ISO/OVA/QCOW2 availability note at the top
- Verification section uses cosign verify (not ISO checksum)
Releases & Packages section updated with Bootable ISO subsection
explaining workflow artifact availability and local VM build commands.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+34-17Lines changed: 34 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -46,30 +46,34 @@ Built on [uBlue](https://universal-blue.org/) (Fedora Atomic / Silverblue). All
46
46
47
47
## Quickstart
48
48
49
-
Download, verify, boot, run the setup wizard. See [docs/install/quickstart.md](docs/install/quickstart.md) for full details.
50
-
51
-
| Method | Time | Best For |
52
-
|--------|------|----------|
53
-
|[**ISO**](docs/install/quickstart.md#path-a-install-from-iso-real-pc) (Recommended) |~30 min | Real PC, full security |
54
-
|[**OVA**](docs/install/quickstart.md#path-b-import-vm--virtualbox--vmware-ova)|~15 min | Try it first (VirtualBox/VMware) |
55
-
|[**QCOW2**](docs/install/quickstart.md#path-c-import-vm--kvm--proxmox--qemu-qcow2)|~15 min | KVM / Proxmox |
56
-
|[**Rebase**](docs/install/quickstart.md#path-d-advanced--rebase-from-existing-fedora)|~45 min | Existing Fedora Silverblue |
57
-
58
-
After boot, the setup wizard guides you through profile selection, system verification, and model import.
59
-
60
-
### Advanced / Operator Install
61
-
62
-
For production deployments with digest pinning and signing policy configuration:
49
+
Install [Fedora Silverblue 42](https://fedoraproject.org/silverblue/), then run the bootstrap script. The script configures cosign signature verification **before** the first image pull — no unverified data is ever fetched.
63
50
64
51
```bash
65
-
#Review the bootstrap script, then run with a pinned digest
|`secai-os-*.iso.sig`| Cosign signature for the bootable ISO |
203
207
204
208
Go services shipped as release binaries: `airlock`, `registry`, `tool-firewall`, `gpu-integrity-watch`, `mcp-firewall`, `policy-engine`, `runtime-attestor`, `integrity-monitor`, `incident-recorder`.
205
209
206
210
Python services (`ui`, `agent`, `quarantine`, `diffusion-worker`, `search-mediator`) are baked into the OCI image and do not ship as standalone binaries.
207
211
212
+
### Bootable ISO
213
+
214
+
A signed bootable ISO is built by every tagged release using [build-container-installer](https://github.com/JasonN3/build-container-installer). The ISO exceeds GitHub's 2 GB release asset limit, so it is available as a **workflow artifact** (90-day retention) from the [Release workflow runs](https://github.com/SecAI-Hub/SecAI_OS/actions/workflows/release.yml). The cosign signature (`.iso.sig`) is published to the GitHub Release for verification.
215
+
216
+
To build a QCOW2 or OVA locally from the OCI image:
|**Bootstrap** (Recommended) |~30 min | Easy | Real PC or VM, full security |
10
+
|**VM Build**|~45 min | Moderate | Local evaluation in VirtualBox/VMware/KVM |
11
+
|**Development**|~10 min | Easy | Service development only (no OS features) |
12
+
13
+
> **Note on ISO/OVA/QCOW2:** The release pipeline builds a signed bootable ISO, but it exceeds GitHub's 2 GB release asset limit. Pre-built VM images (OVA/QCOW2) require build infrastructure not yet provisioned. For now, the bootstrap path below is the primary install method. See [Artifact Availability](#artifact-availability) for details.
13
14
14
15
---
15
16
16
-
## Path A: Install from ISO (Real PC)
17
+
## Path A: Bootstrap Install (Real PC or VM)
18
+
19
+
This is the recommended path. It installs Fedora Silverblue, then rebases to SecAI OS with full signature verification. You get the complete security stack: Secure Boot, TPM2, encrypted vault, and all 25+ defense layers.
17
20
18
-
This gives you the full security stack including Secure Boot, TPM2, and hardware isolation.
21
+
**1. Install Fedora Silverblue**
19
22
20
-
**1. Download the ISO**
23
+
Download [Fedora Silverblue 42](https://fedoraproject.org/silverblue/) and install it on your hardware or in a VM. A minimal install is fine — SecAI OS replaces the desktop.
21
24
22
-
Go to the [latest release](https://github.com/SecAI-Hub/SecAI_OS/releases/latest) and download `secai-os-<version>-x86_64.iso`.
25
+
**2. Run the bootstrap script**
23
26
24
-
**2. Write to USB**
27
+
The bootstrap script configures cosign signature verification **before** the first image pull — no unverified data is ever fetched.
Restart your computer. Enter the boot menu (usually F12, F2, or Esc) and select the USB drive. Follow the installer prompts.
45
+
**3. Reboot**
37
46
38
-
**4. First boot**
47
+
```bash
48
+
sudo systemctl reboot
49
+
```
39
50
40
-
After installation completes and the system reboots, open a browser to:
51
+
**4. Open the UI**
52
+
53
+
After reboot, open a browser to:
41
54
```
42
55
http://127.0.0.1:8480
43
56
```
44
57
45
-
**What you should see:** The SecAI OS setup wizard. It will ask you to choose a privacy profile, verify system health, and import your first AI model.
58
+
**What you should see:** The SecAI OS setup wizard. It asks you to choose a privacy profile, verifies system health, and walks you through importing your first AI model.
46
59
47
60
---
48
61
49
-
## Path B: Import VM — VirtualBox / VMware (OVA)
50
-
51
-
For evaluation. Note: VM installs cannot use TPM2 sealing or Secure Boot chain verification.
52
-
53
-
**1. Download the OVA**
62
+
## Path B: Build a VM Image Locally
54
63
55
-
Go to the [latest release](https://github.com/SecAI-Hub/SecAI_OS/releases/latest) and download `secai-os-<version>.ova`.
64
+
If you want a self-contained VM image without installing Fedora first, you can build one from the OCI image using the included scripts. This requires a Linux host with KVM/QEMU.
56
65
57
-
> OVA may not be available in every release. If absent, use Path C (QCOW2) or Path A (ISO).
66
+
**1. Clone the repo and build**
58
67
59
-
**2. Import**
60
-
61
-
-**VirtualBox:** File → Import Appliance → select the OVA → Import
62
-
-**VMware:** File → Open → select the OVA → Import
The build scripts pull the signed OCI image and create a bootable disk with root + encrypted vault partitions. Credentials are randomly generated and printed at build time.
78
80
79
-
**1. Download the QCOW2**
80
-
81
-
Go to the [latest release](https://github.com/SecAI-Hub/SecAI_OS/releases/latest) and download `secai-os-<version>.qcow2`.
82
-
83
-
> QCOW2 may not be available in every release. If absent, use Path A (ISO).
84
-
85
-
**2. Create a VM**
81
+
**2. Start the VM**
86
82
87
83
```bash
88
-
#Example: create and start a KVM VM using the downloaded disk
84
+
# KVM/QEMU
89
85
virt-install \
90
86
--name secai-os \
91
87
--memory 16384 \
92
88
--vcpus 4 \
93
-
--disk path=secai-os-*.qcow2,format=qcow2 \
89
+
--disk path=output/secai-os.qcow2,format=qcow2 \
94
90
--import \
95
91
--os-variant fedora42 \
96
92
--network default \
97
93
--noautoconsole
94
+
95
+
# Or import the OVA into VirtualBox/VMware
98
96
```
99
97
100
98
**3. Access the UI**
101
99
102
100
```bash
103
-
# Find the VM's IP
104
101
virsh domifaddr secai-os
105
-
# Open in browser
106
-
xdg-open http://<vm-ip>:8480
102
+
# Open http://<vm-ip>:8480 in your browser
107
103
```
108
104
109
-
**What you should see:**The setup wizard.
105
+
> **Security note:**VM installs cannot use TPM2 vault key sealing and the host hypervisor has visibility into guest memory. VMs are suitable for evaluation, not sensitive workloads. See [support-lifecycle.md](../support-lifecycle.md) for the full support matrix.
110
106
111
107
---
112
108
113
-
## Path D: Advanced — Rebase from Existing Fedora
114
-
115
-
If you already have Fedora Silverblue (F42+), you can rebase directly. This is the operator path.
109
+
## Path C: Development Mode
116
110
117
-
See [bare-metal.md](bare-metal.md)for the full bootstrap flow with digest pinning and signing policy configuration.
111
+
Run individual services locally for development without rebasing your OS. No security features (sandboxing, firewall, vault) are active.
118
112
119
-
```bash
120
-
# Quick version (evaluation only — use --digest for production)
For advanced verification (cosign signatures, SLSA3 provenance), see [sample-release-bundle.md](../docs/sample-release-bundle.md) or run:
150
+
For advanced verification (cosign detached signatures, SLSA3 provenance attestation), see [sample-release-bundle.md](../sample-release-bundle.md) or run:
The ISO is produced by every tagged release and is available as a [workflow artifact](https://github.com/SecAI-Hub/SecAI_OS/actions/workflows/release.yml) with 90-day retention. Its cosign signature (`.iso.sig`) is published to GitHub Releases for verification. For permanent ISO hosting, an external storage solution is needed.
168
+
169
+
---
170
+
168
171
## Next Steps
169
172
170
173
-[Import a GGUF Model](../examples/import-gguf-model.md)
171
174
-[Enable Web Search](../examples/enable-web-search.md)
0 commit comments