This guide covers building nomnom from source on Linux, macOS, and Windows.
Install Rust via rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"Verify:
rustc --version # rustc 1.78+ required
cargo --versionnomnom is a GUI wrapper — yt-dlp must be on your PATH.
| Platform | Command |
|---|---|
| Linux / macOS | pip install -U yt-dlp |
| macOS (Homebrew) | brew install yt-dlp |
| Windows (winget) | winget install yt-dlp |
| Windows (scoop) | scoop install yt-dlp |
Install the WebView and GUI system libraries:
# Debian / Ubuntu
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf \
libxdo-dev
# Fedora / RHEL
sudo dnf install -y \
webkit2gtk4.1-devel \
gtk3-devel \
libappindicator-gtk3-devel \
librsvg2-devel
# Arch Linux
sudo pacman -S --needed \
webkit2gtk-4.1 \
gtk3 \
libappindicator-gtk3 \
librsvg \
patchelfXcode Command Line Tools (provides clang, libc, etc.):
xcode-select --installNo additional packages needed — macOS includes WebKit natively.
Install the Microsoft Visual C++ Build Tools and select the "Desktop development with C++" workload.
WebView2 is bundled with Windows 10/11 — no extra install needed.
git clone https://github.com/YOUR_USERNAME/nomnom.git
cd nomnomcargo runcargo build --release
# binary at: target/release/nomnom (or nomnom.exe on Windows)nomnom uses Tauri's
cargo-tauri / Dioxus CLI for packaging.
cargo install dioxus-clidx bundle --releaseOutput:
- Linux:
target/dx/nomnom/release/bundle/deb/*.deband*.AppImage - macOS:
target/dx/nomnom/release/bundle/dmg/*.dmg - Windows:
target/dx/nomnom/release/bundle/msi/*.msi
Cross-compilation is not officially supported by Dioxus desktop bundling. Use the provided GitHub Actions workflow to build on native runners for each platform (recommended for releases).
chmod +x nomnom-*.AppImage
./nomnom-*.AppImagesudo dpkg -i nomnom_*_amd64.deb
# then launch:
nomnom- Open
nomnom_*.dmg - Drag nomnom.app to your Applications folder
- First launch: right-click → Open (to bypass Gatekeeper on first run)
- Double-click
nomnom_*_x64_en-US.msi - Follow the installer wizard
- Launch nomnom from the Start Menu
nomnom spawns yt-dlp via your login shell ($SHELL on Unix, cmd on Windows).
Make sure yt-dlp is on the PATH for your login shell, not just your interactive shell.
Quick test:
# Unix
bash -i -c "yt-dlp --version"
# Windows (PowerShell)
yt-dlp --versionYou're missing the WebKit development libraries. Re-run the apt/dnf/pacman command in the Prerequisites section.
Run this once to strip the quarantine attribute:
xattr -cr /Applications/nomnom.appInstall the Visual C++ Redistributable.