This guide walks you through everything needed to build and run Pacto from source on macOS. You will install Xcode Command Line Tools, required Homebrew packages, configure environment variables forDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/covenant-gov/pacto-app/llms.txt
Use this file to discover all available pages before exploring further.
bindgen and OpenSSL, install the Rust toolchain, Node.js, and pnpm — then install dependencies and launch the app.
WebKit is provided by macOS itself, so no
webkit2gtk package is required. Whisper acceleration uses Metal on macOS, so no Vulkan package is needed either.Install system dependencies
Install the Xcode Command Line Tools (Apple’s compiler and linker toolchain):If Homebrew is not already installed, install it now:Install the packages required by Tauri and native Rust crates:
| Package / Tool | Purpose |
|---|---|
| Xcode Command Line Tools | Apple compiler and linker toolchain required for native builds |
| Homebrew | Package manager used to install macOS dependencies |
cmake | Build system required by native Rust dependencies (e.g. whisper-rs-sys) |
llvm | Provides clang and libclang needed by bindgen |
pkg-config | Helper tool for finding and linking native libraries |
openssl@3 | OpenSSL headers/libraries for crates that need SSL development files |
git / wget | Source control and download utilities |
Set environment variables for clang/bindgen and OpenSSL
Homebrew installs
llvm and openssl@3 into non-standard paths that the compiler and pkg-config do not find automatically. Add these exports to your shell profile:Install Rust
Install Rust using rustup, the official Rust toolchain installer:When prompted, select the default installation (option 1).After installation, load Rust into your current shell session:Verify the installation:
Install Node.js
Install Node.js v18 or later (v20 recommended).Option A — Homebrew:Option B — nvm (recommended for development):Verify the installation:
Install Node dependencies
From the root of the cloned repository, install all workspace dependencies:
Set up environment and run the app
Copy the example environment file:Run the full desktop app (frontend + Rust backend):Or run only the frontend in the browser (no Rust backend required):
The first
pnpm run tauri:dev can take several minutes because Cargo downloads and compiles all Rust dependencies. Subsequent builds are much faster.Troubleshooting
Xcode Command Line Tools not found — `linker 'cc' not found`
Xcode Command Line Tools not found — `linker 'cc' not found`
Error:Solution: Install Xcode Command Line Tools:
bindgen / libclang / cmake errors — `failed to run custom build command`
bindgen / libclang / cmake errors — `failed to run custom build command`
Error:Solution: Ensure native build tools are installed and that
LIBCLANG_PATH and PATH are exported correctly:OpenSSL errors — `failed to run custom build command for 'openssl-sys'`
OpenSSL errors — `failed to run custom build command for 'openssl-sys'`
Error:Solution: Install OpenSSL and expose it to
pkg-config:Rust not found after installation
Rust not found after installation
Solution: Source the Cargo environment in your current shell:To make this permanent, add it to your shell profile:
Permission denied during pnpm install
Permission denied during pnpm install
Solution: Configure pnpm to operate in user space, then reload your shell: