Miscellaneous

Configuration files

The location of the file getlino uses to store its configuration depends on whether you are root or not.

~/.getlino.conf

The file getlino uses to store its configuration when not running as root.

$VIRTUAL_ENV/.getlino.conf

The file getlino uses to store its configuration when running as root in a virtual environment.

/etc/getlino/getlino.conf

The file getlino uses to store its configuration when running as root in a system python environment (which currently is not recommended but might make sense e.g. when Lino becomes a Debian package).

Configuration reference

getlino.usergroup

The Linux usergroup to set as group owner of files that need to be writeable by django-admin commands and the web server.

You can specify this on the command line as getlino configure --usergroup.

Default value is www-data

This is needed only on a production site with a web_server It is ignored when the specified group doesn’t exist.

getlino.supervisor_dir

The directory where supervisor

getlino.web_server

Which web server to use on this production server. This can be “nginx”, “apache” or empty. When this is empty, getlino configure won’t install any web server. You should not change this value when there is already at least one Lino site on this server.

The startsite cookiecutter template

No longer used: the cookiecutter-startsite project contains a cookiecutter template used by getlino startsite.

Shared virtual environments

You can run multiple Lino sites on a same virtualenv. That virtualenv is then called a shared virtualenv environemnt

When you update a shared environment (using pull.sh or some manual pip command), the change will affect all sites at once and you must take special care for migrating their data.

In a developer environment you usually have a single shared env used by all your sites. On a production server you usually have no shared env at all (each production site has its own env). On a demo server you might have several shared envs:

  • /usr/local/lino/shared/env/master

  • /usr/local/lino/shared/env/stable

You can specify a default shared environment with getlino configure --shared-env getlino startsite --shared-env.

Note that getlino configure --clone will install all known framework repositories into the default shared env.

getlino startsite does not install any Python packages when a shared env is used.

Scripts generated by getlino

pull.sh

Update the Python packages used by this virtualenv.

Generated by getlino configure and/or getlino startsite whenever Lino creates a virtualenv.

This file is stored in the $VIRTUAL_ENV/bin directory and is executable.

This includes both the packages installed from cloned source code repositories and those installed via PyPI.

Template: https://github.com/lino-framework/getlino/blob/master/getlino/templates/pull.sh