How to Install Deviant

The deviant client can be installed using one of the following sources:

# Ubuntu/Debian

Prerequisite: Ensure You've Installed Auxon's Deb Package Repo

This section assumes you already have Auxon's deb package repo enabled on your system, which, if you've installed the modality package, you have and can continue.

If not, first, download Auxon's setup package for Debian/Ubuntu (opens new window), install it, and update your apt repositories:

$ sudo apt install ./auxon.deb
$ sudo apt update

deviant can be installed using the standard apt package manager:

$ sudo apt install deviant

# Configuration

Set the modalityd daemon URL for deviant to connect to with the deviant config command. If you are running modalityd on the same machine where you are installing deviant you may be able to omit this step and use the default.

$ deviant config --modalityd "http://my-modalityd-host:14181/v1/"

Note

Deviant operates on data stored in the Modality database, which is managed by modalityd. deviant needs to be informed of where to connect to your modalityd instance to be able to operate on the data it holds. If you do not have modalityd running anywhere, go to the Modality installation guide (opens new window) for instructions to install and run it.

Install a user auth token with the allow-http-api privilege and the allow-mutation privilege, generated with the modality user mint-auth-token command (opens new window), to the default location.

$ cp <your-auth-token-file> ~/.config/modality_cli/.user-auth-token

# Verify the Installation

To check that everything is installed correctly and ready to go, run:

$ deviant mutator list

You may or may not see some mutators listed, depending on if you or others have connected mutators to this modality instance. As long as you don't see errors your install is ready to use.

# Next steps:

  • To get an idea of how to use Deviant, see the tutorial.

# Tarball

Tarball contents

The tarball contains the Deviant CLI along with a variety of Modality (opens new window) infrastructure, example systems, and more. In particular, the Modality CLI (opens new window) is almost always useful alongside Deviant to manage your data. The file structure is as follows:

.
├── bin
│   ├── deviant
│   ├── modality
│   ├── modalityd
│   ├── modality-reflector
│   └── modality-probe
├── CHANGELOG.md
├── cmake
├── completions
├── examples
│   ├── c-example
│   └── rust-example
├── include
│   └── modality
├── lib
├── LICENSE
├── man1
├── modality-reflector-config.toml
├── modality-reflector-plugins
│   ├── collectors
│   └── importers
├── notebooks
├── python
├── rust
└── VERSION

Download the tarball for your system's architecture from Auxon's download page (opens new window).

Extract the downloaded tarball and add the bin directory to your path (you will likely want to update your relevant shell configuration to always set this):

$ export PATH=$PATH:/path/to/modality_x.y.z/bin

Set the modalityd daemon URL for Deviant to connect to with the deviant config command. If you are running modalityd on the same machine where you are installing Deviant you may be able to omit this step and use the default.

$ deviant config --modalityd "http://my-modalityd-host:14181/v1/"

Note

Deviant operates on data stored in the Modality database, which is managed by modalityd. deviant needs to be informed of where to connect to your modalityd instance to be able to operate on the data it holds. If you do not have modalityd running anywhere, go to the Modality installation guide (opens new window) for instructions to install and run it.

Install a user auth token with the allow-http-api privilege and the allow-mutation privilege, generated with the modality user mint-auth-token command (opens new window), to the default location.

$ cp <your-auth-token-file> ~/.config/modality_cli/.user-auth-token

# Verify the Installation

To check that everything is installed correctly and ready to go, run:

$ deviant mutator list

You may see some mutators listed or nothing at all depending on if you or others have connected mutators to this modality instance. As long as you don't see errors your install is ready to use.

# Next steps:

  • To get an idea of how to use Deviant, see the tutorial.