Guidelines:DebianPackages
Debian Packages
As of version 6.0, Eden provides packaged releases for installation, setup and server administration. Packages for Debian (*.deb) are currently provided as assets attached to the respective GitHub release:
Using packaged releases is the recommended setup method for production servers.
Prerequisites
Before starting the installation, you should have a server machine (virtual or bare metal), installed with a suitable Debian/Linux distribution.
As a rule, Eden supports the last two Debian releases (stable and oldstable).
The server should have access to Debian repositories in order to install dependencies, either locally or via internet.
Additionally, you will need a DNS A-record pointing to that server, which you can obtain from your domain services provider.
Installation
Login to the server via SSH, and make yourself root with sudo su -.
Download the release package matching your Debian version, e.g. for Eden-6.0 on Debian-12 Bookworm:
cd /tmp wget https://github.com/sahana/eden/releases/download/6.0/sahana-eden-debian12_6.0-1_all.deb
Install the package:
apt-get update apt-get install -f sahana-eden-debian12_6.0-1_all.deb
This will install all necessary dependencies, including PostgreSQL with PostGIS, the web2py framework, the nginx web server and uWSGI, and finally Eden itself.
The package also deploys the edenctl tool to configure and manage the server.
Configuration
Use edenctl to configure the Eden instance on your server:
edenctl setup
Enter your server details as you are prompted for them.
Tip: if your server URL is eden.example.com, then the hostname would be eden, and the domain example.com
Edenctl will configure the nginx web server and set up a uWSGI daemon to connect it to web2py/Eden. It will also set up and initialize the database, and pre-populate it with some basic data from the configuration template you selected.
Once this is done, you can start your Eden instance with
edenctl start