Install ======= Installing pre-built packages (Linux-only) ------------------------------------------ If you have a Linux system you may install the ``deltachat`` binary "wheel" packages without any "build-from-source" steps. Otherwise you need to `compile the Delta Chat bindings yourself`__. __ sourceinstall_ We recommend to first create a fresh Python virtual environment and activate it in your shell:: python -m venv env source env/bin/activate Afterwards, invoking ``python`` or ``pip install`` only modifies files in your ``env`` directory and leaves your system installation alone. For Linux we build wheels for all releases and push them to a python package index. To install the latest release:: pip install deltachat To verify it worked:: python -c "import deltachat" .. _sourceinstall: Installing bindings from source ------------------------------- Install Rust and Cargo first. The easiest is probably to use `rustup `_. Bootstrap Rust and Cargo by using rustup:: curl https://sh.rustup.rs -sSf | sh Then clone the deltachat-core-rust repo:: git clone https://github.com/chatmail/core cd deltachat-core-rust To install the Delta Chat Python bindings make sure you have Python3 installed. E.g. on Debian-based systems `apt install python3 python3-pip python3-venv` should give you a usable python installation. First, build the core library:: cargo build --release -p deltachat_ffi Create the virtual environment and activate it:: python -m venv env source env/bin/activate Build and install the bindings:: export DCC_RS_DEV="$PWD" export DCC_RS_TARGET=release python -m pip install ./python `DCC_RS_DEV` environment variable specifies the location of the core development tree. If this variable is not set, `libdeltachat` library and `deltachat.h` header are expected to be installed system-wide. When `DCC_RS_DEV` is set, `DCC_RS_TARGET` specifies the build profile name to look up the artifacts in the target directory. In this case setting it can be skipped because `DCC_RS_TARGET=release` is the default.