Building Proxydetox

Proxydetox can be build using cargo or Bazel. The macOS application can only build via Bazel.

Using cargo

The easiest is, to use cargo from rustup. The next command will install the proxydetox binary in ~/.cargo/bin.

cargo install --git https://github.com/kiron1/proxydetox.git

If you have cloned this repository already, you can also do:

cargo install --path .

Enable build features

To enable the Negotiate authentication method, the negotiate feature must be enabled. This means, we would need to add --features negotiate to the above cargo install ... command.

On GNU/Linux and macOS the Generic Security Services Application Program Interface (GSSAPI) will be used. On Windows the Security Support Provider Interface is used .

Using Bazel

The easiest way to obtain Bazel, is by using Bazelisk. The remaining document assumes that either Bazel is installed and available via the PATH variable or Bazelisk is installed and the binary is named bazel and available via the PATH variable.

For the Bazel setup to work, ensue the XCode command line tools are installed:

xcode-select --install

Building ProxydetoxApp (macOS UI)

bazel build //macos/app:ProxydetoxApp

Enable build features

Append --features=negotiate to bazel build to enable the negotiate feature:

bazel build --features=negotiate //...

Autostart

To start Proxydetox automatically when a user is logged in, please see the Autostart section.