
Cyllo, your gateway to streamlined business excellence!
By uniting advanced ERP capabilities with cutting-edge AI and limitless integrations, we’ve built more than a platform—we’ve built your ultimate competitive advantage. Prepare to experience a smoother, smarter way of working where complex tasks become effortless. Your journey to peak efficiency starts now. Let’s transform your operations together. Welcome aboard the future of business management!
Cyllo is optimized for Ubuntu 20.04 or higher. Python 3.10 or higher is used for backend development, PostgreSQL is used for the database server, and Javascript is used for frontend development.
We are going to install the PyCharm Community edition. Before that, it is important to ensure that your computer is eligible to run PyCharm.
The system requirements for installing PyCharm on your computer are as follows:
| Requirement | Minimum | Recommended |
|---|---|---|
| RAM | 4 GB of free RAM | 8 GB of total system RAM |
| CPU | Any modern CPU | Multi-core CPU. |
| Disk space | 3.5 GB | SSD drive with free 5 GB |
| Monitor resolution | 1024×768 | 1920×1080 |
| Operating system | Officially released 64-bit versions of the following: Microsoft Windows 10 or later Windows Server 2019 or later macOS 10.15 or later Any Linux distribution that supports Gnome, KDE, or Unity DE. Pre-release versions are not supported. | Latest 64-bit version of Windows, macOS, or Linux |
You can install PyCharm by downloading the Debian installation file from the provided URL.
https://www.jetbrains.com/pycharm/download/other.html
Alternatively, you can install PyCharm by following the given instructions.
To do this, open the Terminal (press Ctrl + Alt + T to open Terminal) and run the following commands:
sudo apt-get update
sudo apt-get upgrade
sudo snap install pycharm-community --classic
The latest version of Python 3.12 is not available in the default repositories of Ubuntu 20 LTS or Ubuntu 22 LTS. Therefore, if the system is not running Ubuntu 24.04 LTS, an additional repository must be added. The Python packages, including version 3.12, can be found in the deadsnakes repository on Launchpad.
To add the deadsnakes repository, use the following commands.
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
You can check the updated list of Python packages with this command.
apt list | grep python3.12Python 3.12 can be installed using the command provided below.
sudo apt-get install python3.12The following code can be used to install the necessary packages for Python 3.
sudo apt-get install python3.12-dev build-essential libjpeg-dev libpq-dev libjpeg8-dev libxml2-dev libssl-dev libffi-dev libmysqlclient-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev liblcms2-dev Install web dependencies to ensure that a web application can run, build, and function correctly.
sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs/usr/bin/node
sudo npm install -g less less-plugin-clean-css
sudo apt-get install -y node-less
If you want Cyllo reports, you must install Wkhtmltopdf, use the following code to do so.
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt install -f
Next, we need to install PostgreSQL:
sudo apt install postgresql postgresql-clientCreate a database user following these instructions and assign a password to the new user, as it will be needed when setting up the configuration file. Make sure to save the password.
sudo su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt cyllo
Designate the specified user as a superuser.
psql
ALTER USER cyllo WITH SUPERUSER;
Log out of both the psql and the Postgres user sessions.
\q
ExitThe Cyllo source code can be accessed directly from Cyllo’s GitHub repository. Alternatively, you can clone it using Git. To proceed, make sure Git is installed on your system, and then execute the following commands:
sudo apt-get install gitThe command provided will download the Cyllo code and place it in a folder named ‘cyllo’ located within your home directory.
git clone https://github.com
Open the Pycharm Community edition and navigate to the Cyllo directory. Once the project is opened, a dialog box similar to the one shown in the picture may appear. This dialog is used to create a virtual environment, but we will set up the virtual environment using the terminal, so you should cancel this dialog.
To open the terminal, click on the icon shown below or use the keyboard shortcut Alt+F12.

Next, use the commands provided to create a virtual environment with Python 3.12.
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.12
sudo apt install python3.12-venv
python3.12 -m venv your_venv_name

You will notice that your virtual environment is activated after closing and reopening the terminal. You will see an indicator in the terminal, as shown below, which displays the name of your virtual environment.

If the virtual environment is not activated, use the following command.
source your_venv_name/bin/activateCyllo requires the installation of several Python packages, which are listed in the file named ‘requirements.txt’ located inside the Cyllo directory. To proceed, you should run the appropriate command in your terminal.
pip install -r requirements.txt
If no errors are encountered, you can use the following command to check whether all the packages listed in ‘requirements.txt’ have been successfully installed.
pip list
If you encounter any errors, you should open the ‘requirements.txt’ file and install each package individually using the command provided.
pip install requirement_nameExample 1:

Example 2:

In most cases, some packages may be listed more than once, and it is usually sufficient to install just one of them. Therefore, even if one of the duplicates fails to install, it should not cause any issues.
Additionally, if any packages that are defined with ‘sys_platform’ set to ‘win32’ fail to install, you should not install them.
If errors occur while installing the package ‘psycopg2==2.9.2 ; sys_platform != ‘win32’ and python_version ‘3.10’ or sys_platform == ‘win32’, you should instead use the command provided to install an alternative package.
pip install psycopg2-binaryOpen the cyllo.conf file and update the db_password field with the password you set for the database user ‘Cyllo’ in the previous step.
[options]
admin_passwd = admin
db_host = localhost
db_port = 5432
db_user = cyllo
db_password = your_password_of_db_user
addons_path = /home/user/cyllo/addons, /home/user/cyllo/cyllo_addons
server_wide_modules = web, cyllo_web
xmlrpc_port = 8017
Also, replace the addons_path value with the actual path to the addons and cyllo_addons directories. To do this, press Ctrl + Shift + C on the directory. This will copy the path to that directory. Use this path in the addons_path. You can also create a new directory for your custom modules, and ensure the path to that directory is included in the addons_path, separated by commas.
eg: addons_path = /home/user/cyllo/addons, /home/user/cyllo/cyllo_addons, /home/user/cyllo/custom_addons
Navigate to Settings -> Python -> Interpreter to configure a Python interpreter.


When you open this window, if the interpreter (Python 3.12 from cyllo_venv) is already configured, no changes are needed. If not, select the Add Interpreter option and make the necessary selections.

To set up the configuration, navigate to the “Edit Configurations” option under the current file.

Once the dialog box appears, click the “+” button and choose “Python” from the available options.
Next, you can fill in the fields as shown in the image below.

Name: You can assign any name to this configuration.
Python Interpreter: The Python interpreter for this project should be selected here. Since the interpreter was already set up in a previous step, it will be automatically filled in.
Script Path: Select the “cyllo-bin” file located in the “cyllo” directory.
Parameters: You can enter parameters here to run the script. The “-c” parameter is required, and you may add more as needed. Additionally, you might need to include the configuration file in the parameters.
Working Directory: Make sure to specify the current working folder for the project.
The setup for Cyllo is now complete. You can now click the “Run” button above to start the project.


You can now test the local server at localhost:8017 (8017 is the port you specified in the xmlrpc_port setting of the cyllo.conf file) using your web browser. If all your settings are correct, the browser will display the Cyllo database management interface as shown below.

This is how Ubuntu users can set up a Cyllo PyCharm development environment.