We have pushed a release to our beta apt server. Including support for Debian 13 (Trixie) and Ubuntu 26.04 (Resolute)
On new installs
If you want to install a new Hestia installation form the beta server.
# Debian
wget https://beta-apt.hestiacp.com/hst-install-debian.sh
# or Ubuntu
wget https://beta-apt.hestiacp.com/hst-install-ubuntu.sh
Then install via bash hst-install-debian.sh or bash hst-install-ubuntu.sh
Existing installs:
Please only execute this on testing/development systems!
# Collecting system data
ARCH=$(arch)
case $(arch) in x86_64) ARCH="amd64" ;; aarch64) ARCH="arm64" ;; esac
codename="$(lsb_release -s -c)"
apt="/etc/apt/sources.list.d"
# Add the beta repo to hestia.list
sed -i 's/^/#/' $apt/hestia.list
echo "deb [arch=$ARCH signed-by=/usr/share/keyrings/hestia-beta-keyring.gpg] https://beta-apt.hestiacp.com/ $codename main" >> $apt/hestia.list
curl -s "https://beta-apt.hestiacp.com/pubkey.gpg" | gpg --dearmor | tee /usr/share/keyrings/hestia-beta-keyring.gpg > /dev/null 2>&1
# Update to the beta version
apt update && apt upgrade
IMPORTANT: If you want to upgrade the OS, follow these steps:
Debian 12 Bookworm to Debian 13 Trixie
Important note (run as root)
All commands in this guide must be executed as root user.
You can either log in directly as root or use sudo -i before running the commands.
Update the current system
First, make sure your current system is fully up to date.
apt-get update
apt-get -y full-upgrade
Upgrade MariaDB
Before upgrading to Debian 13, make sure MariaDB has been upgraded to at least version 11.8, since the MariaDB repository does not support version 11.4 on Debian 13.
sed -i -E 's|mariadb-server/[0-9]+\.[0-9]+/repo/|mariadb-server/11.8/repo/|' /etc/apt/sources.list.d/mariadb.list
apt-get update
apt-get -y full-upgrade
Update the APT sources
Once this is done, update your APT sources to Debian 13:
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/*.list
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/*.sources
apt-get update
Check for locally modified configuration files
Before continuing, you may want to generate a list of configuration files for which newer versions are available but the system is currently using locally modified versions. This allows you to compare the list after the upgrade in case any manual changes are required.
find / -path /root -prune -o -type f -regex '.*\.\(dpkg\|ucf\)-dist$' -print
Perform the system upgrade
Now start the upgrade:
DEBIAN_FRONTEND=noninteractive UCF_FORCE_CONFFOLD=1 apt-get -y full-upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
Migrate service configuration files
Some services, such as Dovecot or BIND, may fail to start because they are still using configuration files that are no longer compatible. Even if no services appear to be failing, you should run the following script. It will automatically detect whether any configuration changes are required and apply them if necessary.
/usr/local/hestia/install/upgrade/manual/migrate_conf_to_debian_13.sh
Review new configuration files
At this point, you can run the following command again to check for new configuration files:
find / -path /root -prune -o -type f -cmin -120 -regex '.*\.\(dpkg\|ucf\)-dist$' -print
You may see a few files listed, but you should ignore most of them. Configuration files managed or modified by Hestia (such as sshd, dovecot, bind, exim4, etc.) should always be ignored. If you are unsure whether a file needs to be reviewed or merged, it is safest to leave it unchanged.
Reboot the system
Finally, reboot the system:
reboot
Clean up
After the system starts again, update the package lists, install any remaining package upgrades, and remove packages that are no longer needed:
apt-get update
apt-get -y full-upgrade
apt-get autoremove
apt-get clean
The upgrade is now complete.
Ubuntu 24.04 Noble to Ubuntu 26.04 Resolute
Important note (run as root)
All commands in this guide must be executed as root user.
You can either log in directly as root or use sudo -i before running the commands.
Update the current system
First, make sure your current system is fully up to date.
apt-get update
apt-get -y full-upgrade
Upgrade MariaDB
Before upgrading to Ubuntu 26.04, make sure MariaDB has been upgraded to at least version 11.8, since the MariaDB repository does not support version 11.4 on Ubuntu 26.04.
sed -i -E 's|mariadb-server/[0-9]+\.[0-9]+/repo/|mariadb-server/11.8/repo/|' /etc/apt/sources.list.d/mariadb.list
apt-get update
apt-get -y full-upgrade
Replace the Ondřej Surý PPAs
Once this is done, you must remove the Ondřej Surý PPAs. Ubuntu 26.04 is no longer supported through the Launchpad PPAs, and PHP packages are now distributed exclusively through the official Sury APT repository.
while read -r source; do rm -f "$source"; done < <(grep -rl ondrej /etc/apt/sources.list.d)
echo "deb [arch=$(arch | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/') signed-by=/usr/share/keyrings/sury-keyring.gpg] https://packages.sury.org/php/ resolute main" > /etc/apt/sources.list.d/php.list
curl -s https://packages.sury.org/php/apt.gpg | gpg --dearmor | tee /usr/share/keyrings/sury-keyring.gpg > /dev/null 2>&1
Update the APT sources
Now, update your APT sources to Ubuntu 26.04:
sed -i 's/noble/resolute/g' /etc/apt/sources.list
sed -i 's/noble/resolute/g' /etc/apt/sources.list.d/*.list
sed -i 's/noble/resolute/g' /etc/apt/sources.list.d/*.sources
apt-get update
Check for locally modified configuration files
Before continuing, you may want to generate a list of configuration files for which newer versions are available but the system is currently using locally modified versions. This allows you to compare the list after the upgrade in case any manual changes are required.
find / -path /root -prune -o -type f -regex '.*\.\(dpkg\|ucf\)-dist$' -print
Perform the system upgrade
Now start the upgrade:
DEBIAN_FRONTEND=noninteractive UCF_FORCE_CONFFOLD=1 apt-get -y full-upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
Migrate service configuration files
Some services, such as Dovecot or BIND, may fail to start because they are still using configuration files that are no longer compatible. Even if no services appear to be failing, you should run the following script. It will automatically detect whether any configuration changes are required and apply them if necessary.
/usr/local/hestia/install/upgrade/manual/migrate_conf_to_ubuntu_26.04.sh
Review new configuration files
At this point, you can run the following command again to check for new configuration files:
find / -path /root -prune -o -type f -cmin -120 -regex '.*\.\(dpkg\|ucf\)-dist$' -print
You may see a few files listed, but you should ignore most of them. Configuration files managed or modified by Hestia (such as sshd, dovecot, bind, exim4, etc.) should always be ignored. If you are unsure whether a file needs to be reviewed or merged, it is safest to leave it unchanged.
Reboot the system
Finally, reboot the system:
reboot
Clean up
After the system starts again, update the package lists, install any remaining package upgrades, and remove packages that are no longer needed:
apt-get update
apt-get -y full-upgrade
apt-get autoremove
apt-get clean
The upgrade is now complete.
Disabling the beta repo after 1.10 release
Edit /etc/apt/sources.list.d/hestia.list and remove the # in front of apt.hestiacp.com, and add a # in front of beta-apt.hestiacp.com.
Once that’s done, run apt update && apt upgrade to rollback to the regular release.
If you encounter any issues please report them on Github!