GNUHealth on openSUSE

Jump to: navigation, search


GNU Health

Download for openSUSE

Developer: Luis Falcon
License: GPL V3


GNU Health is a Free Health and Hospital Information System that provides an integrative medicine approach, including the following functionalities:

  • Electronic Medical Record (EMR)
  • Hospital Information System (HIS)
  • Health Information System
  • Electronic signature for medical documents

This site describes the available GNU Health packages for openSUSE and the SUSE Linux Enterprise Server (SLES).

With the intent to provide a common installation method the GNU Health Project provides an installation method using a bash script (see also the GNU Health Installation Guide). Since this script aims to be distribution agnostic, it uses methods that do not consider basic principles in integrated, distribution based systems like openSUSE.

A short listing of the advantages when using openSUSE or SLES packages:

  • Full automatic handling of package dependencies.
  • No need to install additional compilers or deal with source code – GNU Health is precompiled for your operating system version.
  • Full integration with zypper, the distribution package manager. Zypper will not only update the system automatically, but the GNU Health installation as well
  • Integration with systemd for automatic start and stop of the GNU Health system
  • Management of the server with distribution tools
  • Security enhanced setup (no-login user for the GNU Health Server)

Quick Start

The easiest way to install GNU Health is via the openSUSE One-Click-Install for officially released versions.

Just select the desired GNU Health and operating system version, One-Click will manage all the rest for you.

Alternatively you can install via YaST Software management or the command-line tool zypper.

In case you want to use the latest GNU Health release on an 'older' Leap, you need to add the GNU Health repository. Example for GNU Health 3.6 on Leap 15.1:

zypper ar -f gh36

Now install with YaST or zypper:

zypper in gnuhealth               (for the server)
zypper in gnuhealth-client        (for the client)

You want to install the Demo-Database for Release 3.6.x as well?

su postgres
cd /tmp   (note: just to be sure you are allowed to write here...) 36

Read the section 'How to get it running (Without reading the Instructions)' of GNUHealth.README.SUSE (you may need to be logged-in to OpenBuildService to see the file) ---

Installation of the GNU Health server

The very easy way

openSUSE comes with a setup-script, which should run as user root

openSUSE-gnuhealth-setup setup

The script asks 4 questions and does the setup, so it gives you an easy entry into the GNU Health world. Note that it should not be used for production environments, as this requires a more detailed setup (like dedicated database server and no standard password...).

Setup more in detail

For the first-time installation, a few steps have to be followed. We assume you have the package gnuhealth installed, as well the editor GNU nano.

Log in as root and start the database

systemctl start postgresql

Change postgres parameters. You need to log in as user postgres, in order to avoid authorisation issues. Assuming we have nano installed as editor, and you are still logged-in as user 'root'

su postgres
nano /var/lib/pgsql/data/pg_hba.conf

For a local connection (Database on the same machine) change the line with 'local' to TRUST:

    local   all             all                                     md5
    local   all             all                                     trust

Save your input. This will make sure that Tryton/GNUHealth server can connect to the database

Create a role for 'tryton' in the database (still logged-in as user postgres)


Create a database, for example 'mydb'

createdb mydb --encoding='UTF-8' --owner=tryton

Note: The owner of the database should be the same user, as under which the tryton server runs (default:tryton)

Exit as user postgres and restart the database

systemctl restart postgresql

One more step before we can use the database - we need to initialize it. This should happen under the user 'tryton'. As you are still logged-in as 'root':

su tryton -s /bin/bash
/usr/bin/trytond-admin -c /etc/tryton/trytond.conf --all -d mydb

Note: Use the database name you chose in the previous step (here as default: mydb). During the initialization you will be asked for the admin password for this database. For the first time, log in to the newly initialized database with user admin and password as set during initialization.

Start the server afterwards (as root)

systemctl start gnuhealth

As result you will have a bare GNU Health database with the base modules installed.

Installation of the GNU Health client

Install the GNU Health client:

zypper in gnuhealth-client

Open the GNU Health client, either by selecting the icon from the menu, or from the command-prompt with the command 'gnuhealth-client'. Go to

'manage profiles' -> add -> name it 'localhost' -> Host: localhost

You should now see a selection of available databases. Add your newly created database. Done.

Installation of the Raspberry Pi image


The openSUSE project offers a Raspi-image based on openSUSE Leap 15.1, LXQT desktop and GNU Health installation from packages. It contains the GNU Health Release 3.6.x with server and client and the Demo-Database preinstalled. Some background to this:

  • The image can be transferred to a Raspi. Image size is targeted for a 32GB SD-card
  • Language and keyboard layout is English
  • Passwords for root and user 'test' are 'test'
  • Password for demo-database is GNU Health-Standard: admin:gnusolidario


  • Download the Image
  • Check the md5 hash. It should be 7026a78b09cec5db044af628e2101130 gnuhealth36-raspi3-20191231.img.xz
  • Insert the SD-card into your computer and check what device it is (command: lsblk). We assume it is /dev/sdd
  • copy the image to the SD card. This will delete all content on the SD-Card!
 xzcat gnuhealth36-raspi3-20191231.img.xz | dd bs=4M of=/dev/sdd iflag=fullblock oflag=direct status=progress; sync
  • insert the SD card into your Raspi and boot. Done.

What is different from the GNU Health setup from source (vanilla-installation)?

On the technical side, GNU Health is a set of modules for the Tryton server. Tryton itself makes use of a (postgres) database to store its information. When installing GNU Health using the openSUSE packages, GNU Health is tightly integrated into the openSUSE standard system. For security reasons, there is a seggregation of duties and roles:

  • The Postgres database runs under the user 'postgres'
  • The Tryton Server runs under the user 'tryton'. This is by default a system user without login capabilities. (use 'sudo su – tryton -s /bin/bash' to log in)

As GNU Health is an additional set of modules on top of Tryton, it runs as user 'tryton' as well.

This is the major difference to the installation via the bash script from source: The script installs everything in the home directory of the (real!) user gnuhealth! No further integration with system tools (e.g. systemd) is provided.


The numbering schema of GNU Health is different from the one of Tryton. For the One-Click-Installation, this is not an issue, just chose the desired GNU Health version and SUSE does the rest for you.

GNUHealth Version Tryton Version Shipped with Remarks
3.6 5.0 Leap 15.2 Released Nov 2019
3.4 4.6 Leap 15.1 Released Nov 2018
3.2 4.2 Leap 15.0 Released July 2017
3.0 3.8 Leap 42.3 Released Jan 2016
2.8 3.4 Released Feb 2015
2.6 3.2 Released Jul 2014

The Live CD

Due to the shutdown of SUSEStudio, there is currently no Live-CD available. We are working on a replacement.


Each installation has a set of Documentation:

  • /usr/share/doc/packages/gnuhealth/GNUHealth.README.SUSE
  • /usr/share/doc/packages/trytond/tryton-server.README.SUSE

Online documentation

Installation of Tryton Server and GNU Health on openSUSE Link to the backup of Tryton Wiki - will be replaced once the new Wiki is available

Please note that the openSUSE packages are not compliant with the GNU Health packaging guidelines, as they would prevent us from taking advantage of openSUSE's advanced system management features, and would result in a lack of integration.

Watch the Installation Video for Leap and Tumbleweed

External links