Tryton 4.8 install on RedHat 7 - Some icons are not rendered on web interface

Hello all,
We recently installed a test instance of Tryton 4.8. After finally pulling it off and making it run, this is what our web interface looks like:
50

We see the .svg files for tryton-save and tryton-preferences-system within the “root” directory, such files have the appropriate permissions for our tryton user to read them, however for reasons beyond our knowledge they are not being presented.

We would appreciate your help in troubleshooting this matter. We did not go to the latest+greatest because our system has RHEL 7, which comes with Python 2.7.

I would also like to add that we are able to see other icons without issues, like “View Search”, for that we see: src=“data:image/svg+xml;base64,…” basically a blob.

Thank you.

You can install the EPEL repositories. In this repositories you can find python3.6. You can then create a Python virtual environment and then pip install everything. Eventually install some extra python36-* rpms so you don’t need to install a complete build environment to build several python libraries.

I did this on both RHEL7 and CentOS 7 without any problem.

For me, it sounds like a web server issue. You should ensure that the images folder of sao is accessible from the base path from which sao is accessed.

As @edbo said you can install Python3.6 with EPEL.

FYI we implemented a docker image based on CentOS7. You can try it:

docker push datalife/tryton:5.0

Thank you Ced. We are actually able to see most of the icons (I could only attach one image) and if we access the URL, it displays the svg contents.
This is how the site looks to us:

I already tried re-installing everything from scratch and writing SAO components to a different location, ran “npm install --production” and grunt on said location.

Thank you @ebdo, will give it a try that way with the most recent version.

Those icons are not part of sao but delivered by trytond directly that why they are data-base64.
The standard sao icons from images directory must be served by the webserver at the relative path images/. This is not the case for your setup otherwise they will be shown.

How do you reach the web interface? For example you can just start Trytond and then go with your webbrowser to <tryton-server-ipaddress>:8000 (make sure when you want to reach tryton over the network, you have to open the port on your firewall. Also installing the web interface can also be done a bit different. I don’t know if this is best practices, but it works quite well.

  • download sao from the downloads.tryton.org

  • unpack sao (e.g. inside your virtual environment) and rename the package to <whatevernameyoulike>

  • edit your trytond.conf and put the full link of sao in the [web] section like
    root = /home/trytond/test_tryton/<whatevernameyoulike>

  • get the script from About the provided tryton-sao-X.Y.Z.gz archive. Unfortunately you have to modify that script a little bit to get it working on RHEL / CentOS

    • change FETCHCMD='ftp' to FETCHCMD='curl -L'
    • change UNZIP='/usr/local/bin/7z x' to UNZIP='7z x' (be sure you have 7z installed)
    • change xargs -0 sha256 -b to xargs -0 sha256sum -b

    run the script inside your <whatevernameyoulike> directory. It will create a new directory there with the name sao-dependencies-<trytonversion>.

  • mv the bower_components from the sao-dependencies directory a step higher to the root. Alternatively you can create a symlink.

  • start the tryton server and you should be good to go. In my case it worked … :slight_smile:

In case you were wondering, we were finally able to get Tryton 5.2 to run with Python 3.6 on RHEL7. Thank you @edbo and all for your suggestions. Btw, We tried the docker version but did not want to manually add all the modules to it.

This is what we did to get this to run:

  • Added the EPEL for RHEL7 to our repos.

  • Installed Python 3.6 and some extra modules:
    yum -y install python36 python36-devel python36-pip cairo-devel cairo-gobject-devel gobject-introspection-devel

  • Installed all of the available Tryton modules with easy_install-3.6

  • Downloaded/extracted the SAO tar file. Ran the required steps (npm and grunt)

  • Initialized the database to version 5.2.

  • Started with a new configuration file for this endeavor, some data intentionally obfuscated:
    $ cat /u01/tryton5.conf
    [database]
    uri = postgresql://trytonuser:********@localhost/
    path = /u01/trytond

    [web]
    listen = 0.0.0.0:8000
    hostname = ***************************
    root = /u01/web_v5

  • Started the service and everything worked, icons were displayed appropriately and we are happy to start testing.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.