Proposals Table of Contents Last edited on Jan 20, 2001 8:51 pm
Zope Fish

Original Author


Please comment on the ProductInstallationSystemFeedback page.


It is not as easy as it could be to manage Zope products. An installation system could go a long way toward making Zope friendlier for new users and making it easier to stay up to date on products from varied sources.

New user difficulties

Business value

Businesses are emerging that are built around adding value to Zope. To keep up a professional image, they need to be able to make their products as easy to install as Zope itself.

This is something Digital Creations has experienced firsthand. It is often necessary to distribute changes to products to customers. Each update requires that the customer manually download the new set of archives, unpack each one, and restart Zope. If there are a lot of updates, this process can be tedious.

Inexperienced users are able to download a simple Zope binary, run it, and get Zope installed with little effort. To increase the perceived market value of Zope, product installation should be almost as easy.

Proposed Solutions

There are several ways to solve this problem.

  1. Create a "Product Installation" object connected to the Control_Panel. It would maintain a list of product sources. The first source would be When the user asks what products are available or updated, the Zope server would fetch an XML document from each source. The user would select which products to install. The Zope server would fetch the distribution archive for each selected product.

    To actually install the products, the user would be required to run a special script or batch file before starting Zope again. This requirement exists so that the products can be installed with privileged permissions, rather than the restricted permissions that are in effect during normal operation. Also, if Zope security is compromised, at least the intruder still can't get Zope to execute arbitrary code.

  2. Create a repackaging script and make it available to product authors. The repackager would take the archive and make a set of compressed archives that are easily installed on their intended platforms. This would include Windows .EXE files, Linux .rpm and .deb files, Mac .sit.hqx files, and others.

    This sounds easy until you realize how many platforms this would have to work with, and how many variations there would be. For example, RedHatx Linux and Linux-Mandrake, while very similar, might require different RPM's because Zope products should be installed in different locations or have a different set of permissions.

    This solution also does not meet some of the goals listed above.

  3. Write an installation program, complete with a GUI, in Python. It would run outside Zope with privileged permissions and do the same thing as outlined in solution #1. It would have the advantage that there would be no need to run a special script after selecting which products to install. However, it would not be as easy to operate remotely.

Risk Factors


Currently, this proposal deals only with the selection of a strategy for installing Zope add-on modules. It might be decided that the current strategy is sufficient after all.


Please comment on the ProductInstallationSystemFeedback page.

View source ProductInstallationSystem
Advanced Actions / History
Visitor: Anonymous User
Jump to:
... by pagename prefix or search term.
For a plain search: