Packaging Godot¶
Starting with 2.0, Godot has features to make it easier to package it for application repositories.
Default behaviour¶
Per default, Godot stores all settings and installed templates in a per-user directory.
First Godot checks the APPDATA
environment variable. If it exists, the per-user directory
is the “Godot” subdirectory of $APPDATA
.
If APPDATA
doesn’t exist, Godot checks the HOME
environment variable. The per-user
directory is then the “.godot” subdir of $HOME
.
This meets common operating system standards.
Global template path (Unix only)¶
The unix_global_settings_path
build variable is meant for Unix/Linux distro packagers
who want to package export templates together with godot. It allows to put the export
templates on a hardcoded path.
To use it, pass the desired path via the scons unix_global_settings_path
build variable
when building the editor. The export templates then live at the “templates” subdirectory
of the path specified.
Templates installed at the per-user location still override the system wide templates.
This option is only available on unix based platforms.
Self contained mode¶
The self contained mode can be used to package godot for distribution systems where godot
doesn’t live at a fixed location. If the godot editor finds a ._sc_
file in the directory
the executable is located, godot will continue in “self contained mode”.
In self contained mode, all config files are located next to the executable in a directory
called editor_data
. Godot doesn’t read or write to the per-user location anymore.
The contents of the ._sc_
file (when not empty) are read with the ConfigFile api (same
format as engine.cfg
, etc). So far it can contain a list of pre-loaded project in this
format:
[init_projects]
list=["demos/2d/platformer", "demos/2d/isometric"]
The paths are relative to the executable location, and will be added to the file editor_settings.xml
when this is created for the first time.