Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/lissy93/adguardian-term/llms.txt

Use this file to discover all available pages before exploring further.

Building from source gives you full control over the binary — useful when your CPU architecture is not covered by the pre-built releases, when you want to apply custom patches, or when you are working on a fork. You will need the Rust toolchain and Git; make is optional but convenient.
If you are planning to contribute code, see the Development > Contributing page for the full development workflow, including how to run the test suite and submit a pull request.

Prerequisites

1

Install Rust via rustup

The official installer sets up cargo, rustc, and rustup in one step:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Follow the on-screen prompts and restart your shell (or run source "$HOME/.cargo/env") so that cargo is on your PATH. For alternative installation methods, see the rustup documentation.
2

Install Git

Git is required to clone the repository. Install it using your system’s package manager if it is not already present — see the Git installation guide for platform-specific instructions.
3

Install make (optional)

make is only needed if you want to use the convenience targets in the Makefile. It is pre-installed on most Linux distributions and macOS. On Windows, you can skip it and run the underlying cargo commands directly.

Clone and build

1

Clone the repository

git clone git@github.com:Lissy93/AdGuardian-Term.git
cd AdGuardian-Term
2

Compile a release binary

cargo build --release
Cargo downloads and compiles all dependencies listed in Cargo.toml, then links the final binary. The first build takes a few minutes; subsequent builds are faster thanks to incremental compilation.
3

Run the binary

./target/release/adguardian
On Windows the binary is named adguardian.exe:
.\target\release\adguardian.exe
If your AdGuard Home details are not set as environment variables, the app will prompt you for them interactively on first launch.
4

Or use make to clean, build, test, and run in one command

If you have make installed, the default target runs the full pipeline:
make
This is equivalent to running make clean, make build, make test, make doc, and make run in sequence.

Makefile targets

The Makefile at the root of the repository provides the following targets. Every target ultimately delegates to cargo — you can run the equivalent cargo command directly if make is unavailable.
TargetWhat it doesEquivalent cargo command
make / make allRuns clean, build, test, doc, and run in sequence
make runCompiles the project (if necessary) then runs itcargo build --all-features && cargo run
make buildCompiles the project and all dependencies with every feature flag enabledcargo build --all-features
make testCompiles the project then runs all unit tests and rustdoc testscargo test --all-features
make benchCompiles the project then executes the benchmark suitecargo bench
make docGenerates HTML documentation from rustdoc comments (excludes dependency docs)cargo doc --no-deps --all-features
make checkChecks the source for compilation errors without producing a binarycargo check --all-features
make fmtVerifies that all bin and lib files conform to the project’s rustfmt style rulescargo fmt -- --check
make clippyRuns the Clippy linter and treats all warnings as errorscargo clippy -- -D warnings
make cleanRemoves the target directory and all compiled artefactscargo clean

Release binary location

After cargo build --release completes, the compiled binary is written to:
./target/release/adguardian        # Linux / macOS
.\target\release\adguardian.exe    # Windows
You can copy this binary to any directory on your PATH to make adguardian available system-wide, for example:
sudo cp ./target/release/adguardian /usr/local/bin/adguardian

Build docs developers (and LLMs) love