Build from Source
VulpineOS is a fork of CamoufoxΒ , itself based on Firefox 146.0.1. The build system uses Make targets that orchestrate Firefoxβs mach build tool.
Prerequisites
- macOS (Apple Silicon or Intel) or Linux (x86_64)
- Python 3.10+ β required by Firefoxβs mach build system
- Go 1.26+ β for the TUI binary
- Node.js 18+ β for OpenClaw
- ~40 GB disk space for the Firefox source tree + build artifacts
macOS Additional
xcode-select --install
brew install mercurial yasmLinux Additional
sudo apt install build-essential libgtk-3-dev libdbus-glib-1-dev \
yasm nasm python3-pipBuild Steps
1. Fetch Source
make fetchDownloads the Firefox 146.0.1 source tarball (~300 MB).
2. Setup
make setupExtracts the tarball and initializes a git repository inside the source tree (used for tracking patch application).
3. Apply Patches + Additions
make dirThis runs scripts/patch.py to apply all unified diffs from patches/ and scripts/copy-additions.sh to copy new files from additions/ into the Firefox source tree.
Key patches:
action-lock.patchβ C++ page freeze (nsDocShell)- Camoufox fingerprinting patches (inherited)
Key additions:
additions/juggler/β the entire Juggler automation layeradditions/juggler/TelemetryService.jsβ VulpineOS telemetryadditions/juggler/TrustWarmService.jsβ trust warming
4. Compile
make buildRuns ./mach build inside the Firefox source tree. On Apple Silicon with artifact builds enabled, this takes roughly 5 minutes. Full builds on Linux take 30-60 minutes.
5. Build the Go Binary
go build -o vulpineos ./cmd/vulpineosProduces a ~11 MB binary with the full TUI, remote connectivity, MCP server, and orchestrator.
6. Install OpenClaw
npm installInstalls OpenClaw as a dependency (configured in the repoβs package.json).
7. Package (macOS)
make package-macosCreates a distributable .app bundle.
Repository Structure
VulpineOS/
βββ patches/ # Unified diffs applied to Firefox source
βββ additions/ # New files copied into Firefox source tree
β βββ juggler/ # Playwright wire protocol + VulpineOS services
βββ settings/ # Preferences (camoufox.cfg) and branding
βββ scripts/ # Build orchestration (patch.py, copy-additions.sh)
βββ cmd/vulpineos/ # Go CLI entry point
βββ internal/ # Go packages (TUI, kernel, vault, pool, etc.)
βββ go.mod
βββ package.json # OpenClaw dependency
βββ MakefileArtifact Builds
On macOS with Apple Silicon, Firefox supports artifact builds that download precompiled C++ components and only rebuild JavaScript/resource changes. This reduces build time from 30+ minutes to under 5 minutes. VulpineOSβs make build uses this automatically when available.