Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Installing and uninstalling

Install a package's items from the administration - the install page, what the install meets here by remote ID, install as drafts, install in the background, conflicts, batching - and uninstall it again, with what each…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/site-packages/admin-gui/installing-and-uninstalling.md

On this page

Installing and uninstalling

This page is for administrators who install a package that is already in the local repository (imported, fetched or created), or take one off again. Installing runs the package's install items on this site; uninstalling runs its uninstall items. Both change the site.

The packages list, from which a package is installed
The packages list, from which a package is installed

Contents

  1. Site packages are not installed here
  2. Open the install page
  3. What the install meets here
  4. Three ways to install
  5. Conflicts and steps
  6. Large packages
  7. Uninstalling

Site packages are not installed here

A site package is install_type="import": its work (settings, siteaccesses, roles, the post-install) is done by its installer script inside the CreateSites step of the setup wizard, the kickstarter or exp:install. Its card says "Imported only", and its page has no Install button. The packages it requires (classes, demo content) can be installed here like any other package, for example to add demo content to an existing site.

Open the install page

Install on a package's page opens /package/install/<name>. You need package/install for the package's type (eZPackage::canInstall()); without it the page answers "access denied" and the package's page says "You are not allowed to install packages (package/install), so the Install button is not shown."

The page lists the Install items, one line per item as its handler explains it, and, when the package came from an upload or Validate, the validation result. A package that is already installed says so: "Installing it again repeats every item below; content it creates is created again."

What the install meets here

Before you press anything, What the install meets here looks up every content object of the package by its remote ID: "%total content objects, by remote ID: %create new, %update existing (updated, or a new draft), %conflict conflicts, %error without their class." Each object's row says where its main location goes: "At the top", "A node here", "A node of the package", or a missing parent.

Read it for every package with content. A conflict means the remote ID belongs to an object of another class, which is left alone. "the class is neither installed nor in the package" means the object cannot be created until its class exists.

Three ways to install

ButtonDoesUse it when
Install packageinstalls every item in turn, in this requestsmall packages, classes, settings
Install as drafts ("Install the content objects as drafts")writes only the content objects, as drafts; nothing is published; an existing object gets a new draft or is left alone, as you choose; "These items change the site at once and were left out" for classes, settings and filesyou want to review content before it goes live
Install in the backgroundthe same install as a content job (packageinstall) as you; "The package page and the job page show its progress; nothing waits for this page."many objects; the page suggests it above [ContentJobSettings] SynchronousLimit

Skip installation returns to the package's page without installing. Install as drafts is described on The JSON package format.

Conflicts and steps

"Each item is installed in turn; a step may ask how to handle a conflict." The content class handler, for example, finds an existing class by its remote ID and asks what to do (ERROR_EXISTS in kernel/classes/packagehandlers/ezcontentclass/ezcontentclasspackagehandler.php). Your answer can be remembered for the rest of the run for items of the same type and error.

Large packages

The install runs in batches so a large package does not hit the web server's time limit (package.ini [InstallerSettings]):

[InstallerSettings]
InstallBatchMaxItems=12
InstallBatchTimeBudgetSeconds=6

A batch ends after that many items or that many seconds, and the page continues with the next one. See A package installer that survives big packages. For very large packages the command line is often better: php ezpm.php install <name> (ezpm).

Uninstalling

Uninstall on a package's page opens /package/uninstall/<name> (policy package/install as well). It lists the Uninstall items and warns: "Uninstalling removes what the items below created on this site, content included. It cannot be undone." Uninstall package runs them in reverse order and marks the package as not installed; Skip uninstallation goes back. A package with nothing to uninstall says "This package has nothing to uninstall."

Warning

Take a backup of the database and var/ before you install or uninstall a package with content. Neither page has an undo, and uninstalling removes content editors may have changed since.

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x