Error variables.less with installation

Hello All,

I have installed gnuhealth server and Sao . But only the hamburger menu, a small green button and two small dots showed up on my website tryton webpage when accessed. Nothing happens when the menu is clicked on thus nothing else is loaded on the page.

While gnuhealth installations went all well, Sao installation threw the following error during installation. “FileError: ‘variables.less’ wasn’t found. Tried - src/variables.less,src/variables.less,bower_components/bootstrap/less/variables.less,variables.less in src/sao.less on” …Warning: Error compiling src/sao.less. Use --force to continue. Aborted due to warnings. "

So I used --force to run grunt. This completed the grunt run but with warning.
Since then I have found out that the error is related to a bug filed here :
Issue 5204: sao: variables.less is missing - Tryton issue tracker.

I have then post installed bower@1.8.8 with npm and reinstalled Sao but this did not solved the issues or make any difference to the installation.

Installation is on Opensuse 15.1 Leap
ghuhealth 3.4.1 installed with zypper
Python 3

Please advise on what to do as the related bug filed a while ago (Issue 5204: sao: variables.less is missing - Tryton issue tracker) seemed to have been closed without a resolution.

Many thanks in advance for your help.

I suggest to install gnuhealth 3.6 which use tryton lts 5.0 as backend . Then you just follow the procedure to install sao using a non root user. It will work without problems .

If grunt task still do not find the variable.less file, it is because bower install has still not be run.

Thanks Cedric. Like I mentioned above, I installed bower1.8.8 with npm just like you advised in bug issue 5204. If this is not the same ‘bower install’ you’re talking about, please advise on from where (directory) exactly to run this command from. Thanks again.

Thanks for your advice Dario.
Like advised, I installed gnuhealth 3.6.4(latest) with zypper, downloaded from Opensuse repo-gnuhealth.

But I ran into problems during DB initiation with this command “/usr/bin/trytond-admin -c /etc/tryton/trytond.conf --all -d mydb”
From “/usr/lib/python3.6/site-packages/trytond/modules/health/”, line41, in from trytond.model import ModelView, ModelSingleton, ModelSQL, \
ImportError: cannot import name ‘tree’

Could you please advise on how to deal with the error? Thanks again

No npm and bower are not the same. So if you have an old version of npm, it may not run automatically bower so you have to run it.

It is typical of having the wrong version of trytond for the module health.

Please like ced suggested , check your trytond --version it should be 5.0.15 at least.

what is the output of
rpm -qa | grep tryton

Where do you have that wisdom from?

Thanks Dario. The Trytond version I installed is 4.6. This is because this is the version packaged/available with gnuhealth 3.6.4 on Opensuse 15.1.
I’ve searched but couldn’t find what you suggested.
Please show me where to download a good combination of both gnuhealth 3.6 & Trytond 5.0.15 OR any version combination of both good for Opensuse.


I didn’t install tryton on the server as it is a client unless I understood it all wrong. If you’d meant trytond, then all modules installed are 4.6ish. Thanks for your help.

Ok. Thanks Ced.
So I’m on Opensuse_15_1. Where do I pick up a good trytond/health module combination from?

Many thanks for your help.

I usually get Trytond using the mercurial repository (trytond: log) and checkout on the latest version of 5.0. Then I download the health modules from ftp server of gnu ( and install them indvidually.

This process gives more control of what I am downloading and installing.

So you have only installed the client? I dont understand…

openSUSE provides packages for GNU Health, see
Using the packages provides consistency across all modules
If you mix this up with pip-based python installation, it is a perfect way to mess up your system (unless you are a developer and know exactly what you do)

I meant that I did not install tryton since I intend to access trytond via the web (I understand tryton is an access client to trytond server, please correct me if I’m wrong). is what I started off with i.e. gnuhealth 3.6.4 and Trytond and modules are 3.4.ish. With this I got the Issue 5204: sao: variables.less is missing - Tryton issue tracker problem.

I then upgraded Trytond and modules to 4.6.ish. With this I got the ImportError: cannot import name ‘tree’ problem.

I finally got to install trytond 5.0.23 with pip. Thus I have gnuhealth 3.6.4 & trytond 5.0.23. But trytond choked with the following error below when I ran the command “/usr/bin/trytond-admin -c /etc/tryton/trytond.conf --all -d mydb”

psycopg2.programmingError: column a.parent does not exist
line1 : SELECT “a”.“code”,“a”.“parent” FROM "ir_lang"AS “a”

What do I do?

Thank you.

and where is the tryton/gnuhealth server installed?

GNU Health 3.6.4 does not come with trytond modules 3.4…see

If the tryton-base version is 4.6, then you have a 3.4 GNU Health version.

If you want a Tryton 5 / GNU Health 3.6.x, you need to add the repository (as described in the wiki) and - in case you have already Tryton 4.6/GH 3.4 installed - run
zypper dup --from gh36

I think it will be better to talk about tryton series instead of version as version includes also the minor verison.

You should also update the opensuse wiki page to use this term which is more correct :wink:

Just download the latest tarball from gnuhealth and then run sh it will start downloading the correct tryton version using pip and install gnuhealth modules. All steps are on gnuhealth installation wiki.

Ok, my installation journey looks a bit muddled up now. A quick revisit to make things a bit clearer.

  1. I installed original Opensuse package (gnuhealth 3.4 and trytond 4.6) I got error issue 5204.
  2. Per Dario’s advice, I added repo and installed with zypper (zypper ar -f gh36) with trytond 4.6. I got error ImportError: cannot import name ‘tree’.
  3. I realised I was asked to use trytond =>5.0.1, then installed trytond 5.0.23 with pip. I got error “psycopg2.programmingError: column a.parent does not exist…”

So that means that at the moment I have gnuhealth 3.6.4 and trytond 5.0.23.
And I started with Opesuse package gnuhealth 3.4 and tryton 4.6 which are of course replaced with the above on my server repo now.

Hope I make it a bit clearer now.
So the question is can I make this gnuhealth 3.6.4 & trytond 5.0.23 combination work?
Or do I have to revert to gnuhealth 3.4 and tryton 4.6? with the error issue 5204?

Thank you.