The file gnun.mk contains variable definitions, based on which almost all other important variables are computed. In other words, the variables defined in that file directly affect the overall behavior of the build process.
There are two types of variables, which are specifically separated in
order to make translators’ life easier: variables that translators are
free to modify and variables that are modified by the web-translators
staff5, ideally after performing some local tests. A
translation team leader should update only
TEMPLATE_LINGUAS; everything else is supposed to be built
automagically, without manual intervention. If not, that is a bug that
should be reported and fixed.
You can also request building files separately this way:
make -C server/gnun ../../philosophy/not-ipr.bg.html
A space-separated list with languages. Add here your language code
if and only if you have all the SSI templates translated, and
have already committed all template files listed in
extra-templates variable in server/gnun/gnun.mk,
as well as the templates that are not under GNUN’s control and are
translated manually, like
Add your language code here if you want GNUN to add differences to
msgids in your PO files.
See gnun-add-fuzzy-diff, for more information.
extra-templates variable lists templates under GNUN
control; they are rebuilt from corresponding
when the template.lang.po file is absent, GNUN initializes
and commits a file with empty
optional-templates variable defines optional templates under
GNUN control. Those are the templates of low priority items, like news
lines included in some pages. They are managed like the additional
templates listed in the extra-templates variable, except
This way, the scripts reporting outdated translations and translations that haven’t been converted to PO files won’t complain about them unless the team decides to actually commit template.lang.po.
sitemap variable declares the pages that are treated like
sitemaps, that is, an additional externally generated compendium is used
when updating them. See Sitemap, for more information.
Add here articles that are in the server root, like home.html,
keepingup.html and provide.html. Always write only the
basename of the article, i.e. if you add these two articles, the value
ROOT should be
keepingup provide. This is true for
all the variables that expect values in the form of article names.
The list of directories containing articles, like philosophy, gnu, licenses, etc.
A space-separated list of basenames for articles residing in directory, for which POTs will be generated and updated when the original article changes. If an article is missing here, GNUN doesn’t maintain its translations.
Only because presumably, they are more familiar with GNUnited Nations’ internals. From a purely technical point of view, there is no difference.