Developing/Contributing to Hestia Control Panel

Follow the current guidelines


Are you following any tutorial regarding ARM + Hestia please use the normal install method. Since 1.5.0 we have added ARM packages to our apt server! For current active installs To enable updates please remove the # in /etc/apt/sources.list/hestia and then run apt update && apt upgrade



  • Existing previous Hestia installation (this will ensure everything is already installed)


Go into the src folder and run of these commands.


For building hestia-nginx / hestia-php packages at least 2 GB memory is required!

./ --hestia --install '~localsrc'

Compile Hestia + Hestia PHP / Hestia NGNIX and install

./ --all --install '~localsrc'
./ --hestia --noinstall --keepbuild '~localsrc'

Compile Hestia + Hestia PHP / Hestia NGNIX and install

./ --all --noinstall --keepbuild '~localsrc'

Install Hestia from packages

# Replace with if you want to test a test branch hosted that you created your self
git clone
cd ./hestiacp/

# Replace main with the branch you want to test
git checkout main

cd ./src/

# Compile packages
./ --all --noinstall --keepbuild '~localsrc'

cd ../install

bash hst-install-{os}.sh --with-debs /tmp/hestiacp-src/deb/

Any option can be appended to the installer command.

Update HestiaCP from Github

v-update-sys-hestia-git username branch

Sometimes dependencies will get added or removed as the pakages are installed with dpkg it is not possible to "preload" the dependencies.

In that case you will see an error like:

dpkg: error processing package hestia (–install):
dependency problems - leaving unconfigured

To solve this issue run:

apt-get install -f

To resolve the issue with missing packages. After that run v-update-sys-hestia-git username branch again

Automated testing

For automated testing we currently use Bats (Bash Automated Testing System)


# Clone Hestia repo with testing submodules
git clone --recurse-submodules
# Or on existing local repo with up to date master branch
git submodule update --init --recursive

# Install Bats
test/test_helper/bats-core/ /usr/local



Do not run any testing script on an live server. It might cause issues or downtime!

# Run Hestia tests