Recent changes
Wednesday November 04 2026
-
Choosing the base of a bundle Updated Markdown page
How to choose what your bundle is built on - Exponential 6 on its own, or a Platform distribution that carries it (Legacy, Nexus) - with the facts that decide it - PHP range, the legacy kernel, the layouts editor, the…
-
Composer-based bundles Updated Markdown page
How to build a bundle as a Composer project of your own - the root composer.json, the installer plugin, allowing it, your own extensions and repositories, constraints in the style the project uses, the post-install…
-
Container images Updated Markdown page
How to bundle Exponential as a Docker or Podman image - the project ships no Dockerfile, so this page gives generic guidance - choosing a base, what goes in the image and what on volumes, the documented entry point that…
-
Contributing bundle fixes back Updated Markdown page
Why and how a bundler sends fixes and improvements upstream instead of carrying them - the contribution workflow of the kernel, the GPL and the Contributor Licensing Agreement, extensions and site packages…
-
Database choices for bundles Updated Markdown page
Which databases a bundle of Exponential 6.0.x can use, in the project's official order (SQLite 3, PostgreSQL, MongoDB, MariaDB, Oracle, MySQL), what each needs inside the bundle, how each installer names it, and which…
-
Default credentials and first sign-in Updated Markdown page
Which administrator password a bundled installation ends up with for each installer, why no bundle may ship a fixed or shared password, how to hand a generated password to the recipient once, how to make the first…
-
Demo mode in bundles Updated Markdown page
When a bundle may use demo mode (EXP_DEMO_MODE=1) and when it must never - what it changes, how a demo bundle sets it for every process, installing with a published password, rebuilding on a schedule, and how to keep it…
-
Documentation to ship with a bundle Updated Markdown page
Which documentation a bundle of Exponential carries - the doc/ tree with the built-in help, its GNU FDL 1.3 license and notices, your own guides - what the GFDL lets you do with the help (copy, adapt, translate, sell)…
-
Education and demo bundles Updated Markdown page
How to bundle Exponential for classrooms, workshops, trade shows and public demos - SQLite and exp:install for speed, the demo content packages, resetting a site between groups, published passwords only with demo mode…
-
Exponential 6 as the base of a bundle Updated Markdown page
What a bundle built on Exponential 6 already contains before you add anything - the kernel, the extensions the root composer.json requires, Velocity, the default theme and the site packages the installers offer - and…
-
Extension bundles Updated Markdown page
How to ship several Exponential extensions as one bundle - a Composer meta package or a documented set, dependencies in extension.xml, loading order, version and license fields that agree, the secret check for exported…
-
File permissions and var/ ownership in a bundle Updated Markdown page
Which directories of a bundled installation must be writable and by whom, the one-user and one-group setups, the hardened file modes to ship instead of the world-writable defaults, the SQLite directory, Velocity's…
-
First boot and install once Updated Markdown page
Why a bundle installs the site at the recipient's first start and never at build time or at every start, the documented "already installed" test, a first-boot sequence with ownership, secrets, the install, the password…
-
Getting the code for a bundle Updated Markdown page
The three documented ways to get Exponential's code (git clone and composer install, composer create-project, composer require into your own project), which one suits which kind of bundle, and how to check the result…
-
GPL obligations when you distribute a bundle Updated Markdown page
What the GNU General Public License, version 2 or later, asks of a bundler who distributes Exponential - license texts, notices, corresponding source code including changes, no extra restrictions - how that applies to…
-
Hosting panel installers Updated Markdown page
How to bundle Exponential as a one-click install in a hosting control panel or an app installer - which installer to call, the steps around it (account, database, code, install as the account's user, web server rules…
-
Integrity checks for a bundle Updated Markdown page
How a bundler proves the Exponential files in a bundle are the released ones - the file manifest share/filelist.md5, bin/php/checkmanifest.php and its options, the admin's file consistency check, extension manifests…
-
kickstart.ini templates for bundles Updated Markdown page
How to keep the installation of a bundle as a reviewed kickstart.ini template with placeholders, render it at install time with mode 0600, run a dry run and the install, and remove it afterwards - with a complete SQLite…
-
Kinds of bundles Updated Markdown page
The ten kinds of Exponential bundles - container images, server and virtual machine images, hosting panel installers, Linux distribution packages, agency starter kits, Platform distributions, site packages, extension…
-
License fields in your own packages Updated Markdown page
Where the license of the parts you add to a bundle is written - composer.json, ezinfo.php, extension.xml, package.xml of a site package and your LICENSE file - with the SPDX identifiers Exponential uses, the strict…