After months of development, the stable version of Debian 9 Stretch was finally released on June 17th.
Some users started facing problems at the moment to install Elastix on Debian 9 due to a dependency error. There’s a simple reason, the repository was created thinking on Debian 8 Jessie and not Debian 9. Some dependencies needed to install the telephony engine powered by 3CX are present in Jessie Main repo but not in the new Stretch repo.
But thanks to some tweaks we can solve those dependencies errors and install Elastix on Debian 9.
Note: Don’t try this on a production environment this is just for testers an enthusiasts that want to experiment Elastix on Debian 9. This guide will help you to solve the dependency error when installing. It’s important to note that Elastix is not fully tested and supported on Debian 9 and you may find other problems or post-installation bugs. Share your experiences with us in a comment so we can target to support Debian 9 faster!
Download the Debian 9 ISO from here and proceed install as usual. Once the installation is complete now we need to follow the steps to install Elastix on Jessie but first we need to run as root the following commands:
echo 'deb http://ftp.de.debian.org/debian/ jessie main' | tee -a /etc/apt/sources.list
apt-get install libicu52 libssl1.0.0 libcurl3=7.38.0-4+deb8u5
On the first line we are adding the Main Jessie repository to our source list in Debian 9 as we are going to need a few libraries from there. On the second line we update our sources and then we install ibicu52, libssl1.0.0 and libcurl3=7.38.0-4+deb8u5 from the Debian 8 Jessie Repository. (These are the dependencies that caused the installation error. After the installation of the libraries we recommend to edit source.list and remove Jessie repository to prevent conflicts).
Now with the missing dependencies already installed we can proceed to install Elastix as per documentation.
Connect to the machine using SSH and enter the following commands:
wget -O- http://downloads.3cx.com/downloads/3cxpbx/public.key | apt-key add -
echo "deb http://downloads.3cx.com/downloads/3cxpbx/ /" | tee /etc/apt/sources.list.d/3cxpbx.list
apt-get install 3cxpbx
You know the installation was completed successfully when you see this screen.
Note: As you know Debian OS is a rolling release distribution which means you can upgrade Jessie installs to Stretch. This is great, however, do not upgrade for now because we need to include the correct dependencies to the package. We will deliver this in the coming weeks. For the time being, users that want to test Elastix on Debian 9 Stretch should do this on a fresh install and follow the above procedure.