sn0int 0.20.1

Semi-automatic OSINT framework and package manager
Documentation
Build from source
=================

It's generally recommended to `install a package <install.html>`_ if available.
This section is about building the binary from git.

Install dependencies
--------------------

You need a recent rust compiler. It's usually recommended to install a rust
compiler with `rustup <https://rustup.rs/>`_, but if you're system ships the
most recent compiler in a package that works too. Note that some systems aren't
fully supported by rustup (like OpenBSD and alpine) and you need to install
rust from a package in that case.

Archlinux
~~~~~~~~~

.. code-block:: bash

    $ pacman -S geoip2-database libseccomp libsodium publicsuffix-list sqlite

Mac OSX
~~~~~~~

.. code-block:: bash

    $ brew install libsodium

Debian/Ubuntu/Kali
~~~~~~~~~~~~~~~~~~

.. code-block:: bash

    $ apt install build-essential libsqlite3-dev libseccomp-dev libsodium-dev publicsuffix pkg-config

.. warning::
   On a debian based system make sure you've installed rust with rustup.

Alpine
~~~~~~

.. code-block:: bash

    $ apk add sqlite-dev libseccomp-dev libsodium-dev

OpenBSD
~~~~~~~

.. code-block:: bash

    $ pkg_add sqlite3 geolite2-city geolite2-asn libsodium

Gentoo
~~~~~~

.. code-block:: bash

    emerge --ask sys-libs/libseccomp dev-db/sqlite dev-libs/libsodium

Windows
~~~~~~~

You don't need to install any dependencies on windows, but you need to use a
different build command in the next section.

Building
--------

After all dependencies have been installed, simply build the binary:

.. code-block:: bash

    $ cargo build --release

After the build finished the binary is located at ``target/release/sn0int``.